Забрана за Upload на нерегистрирани потребители

VenKu

Registered
Къде греша?


Код:
<?

include("include/session.php");
?>

<?

if($session->logged_in){
   echo "<h1></h1>";
   echo "Welcome <b>$session->username</b>.<br>"
       ."<a href=\"userinfo.php?user=$session->username\">My Account</a><br>"
       ."<a href=\"useredit.php\">Edit Account</a> <br>";
   if($session->isAdmin()){
      echo "<a href=\"admin/admin.php\">Admin Center</a><br>";
   }
   echo "<a href=\"process.php\">Logout</a>";
}
else{

<center>
<? 
$upload_dir = "upload/"; 
$size_bytes = 999151200;  
$extlimit = "yes";  
$limitedext = array(".gif",".jpg",".png",".jpeg", ".bmp", ".mp3", ".rar", ".zip", ".avi", ".pdf", ".mpeg", ".mpg", ".mpg4", ".3gp", ".exe"); 

if (!is_dir("$upload_dir")) { 
die ("Грешка: Папката <b>($upload_dir)</b> не съществува"); 
} 

if(isset($_POST['uploadform'])){ 


$file_tmp = $_FILES['filetoupload']['tmp_name']; 
$file_name = $_FILES['filetoupload']['name']; 

$file_size = $_FILES['filetoupload']['size']; 


if (!is_uploaded_file($file_tmp)){ 
echo "<center><br><br>Грешка : Моля изберете файл за качване!. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>"; 
exit();  
} 



if ($file_size > $size_bytes){ 
echo "Грешка : Файла е твърде голям. Той трябва да бъде под <b>". $size_bytes / 1024 ."</b> KB. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>"; 
exit(); 
} 

$ext = strrchr($file_name,'.'); 
if (($extlimit == "yes") && (!in_array(strtolower($ext),$limitedext))) { 
echo("Грешка : Този тип файл не е позволен за качване. "); 
exit(); 
} 


if(file_exists($upload_dir.$file_name)){ 
echo "&nbsp<br><br>Името на файла <b>$file_name</b> вече е заето. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>"; 
exit(); 
} 
$snimkata = $site_link."/".$upload_dir."".$file_name; 

$file_name = str_replace(' ', '_', $file_name); 

if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) { 
 
echo "<center><br><br>Файла (<a href=\"$upload_dir$file_name\">$file_name</a>) е качен успешно! <br><br> 

 


»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>"; 
exit(); 
}else{ 

echo "Има проблем при преместването на вашия файл. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>"; 
exit(); 
} 
 
}else{ 



for($i=0;$i<count($limitedext);$i++){ 
if (($i<>count($limitedext)-1))$commas=", ";else $commas=""; 
list($key,$value)=each($limitedext); 
$all_ext .= $value.$commas; 
} 


 
echo "<h1></h1>" 
."<center><form method=\"post\" enctype=\"multipart/form-data\" action=\"\">" 
."<center><input type=\"file\" name=\"filetoupload\"><br>" 
."<center><input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\"><br>" 
."<center><input type=\"Submit\" name=\"uploadform\" value=\"Качи\">" 
."<center></form>"; 
}//Край на else 


?>

?>

<?
}

include("include/view_active.php");

?>

Искам когато не си регистриран да не може да се Upload-ва
Ако някой ми помогне ше съм мн благодарен

:eek: :)
 
я пробвай така
Код:
<?

include("include/session.php");

if($session->logged_in){
   echo "<h1></h1>";
   echo "Welcome <b>$session->username</b>.<br>"
       ."<a href=\"userinfo.php?user=$session->username\">My Account</a><br>"
       ."<a href=\"useredit.php\">Edit Account</a> <br>";
   if($session->isAdmin()){
      echo "<a href=\"admin/admin.php\">Admin Center</a><br>";
   }
   echo "<a href=\"process.php\">Logout</a>";



$upload_dir = "upload/";
$size_bytes = 999151200;
$extlimit = "yes";
$limitedext = array(".gif",".jpg",".png",".jpeg", ".bmp", ".mp3", ".rar", ".zip", ".avi", ".pdf", ".mpeg", ".mpg", ".mpg4", ".3gp", ".exe");

if (!is_dir("$upload_dir")) {
die ("Грешка: Папката <b>($upload_dir)</b> не съществува");
}

if(isset($_POST['uploadform'])){


$file_tmp = $_FILES['filetoupload']['tmp_name'];
$file_name = $_FILES['filetoupload']['name'];

$file_size = $_FILES['filetoupload']['size'];


if (!is_uploaded_file($file_tmp)){
echo "<center><br><br>Грешка : Моля изберете файл за качване!. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}



if ($file_size > $size_bytes){
echo "Грешка : Файла е твърде голям. Той трябва да бъде под <b>". $size_bytes / 1024 ."</b> KB. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}

$ext = strrchr($file_name,'.');
if (($extlimit == "yes") && (!in_array(strtolower($ext),$limitedext))) {
echo("Грешка : Този тип файл не е позволен за качване. ");
exit();
}


if(file_exists($upload_dir.$file_name)){
echo "&nbsp<br><br>Името на файла <b>$file_name</b> вече е заето. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}
$snimkata = $site_link."/".$upload_dir."".$file_name;

$file_name = str_replace(' ', '_', $file_name);

if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) {
echo "<center><br><br>Файла (<a href=\"$upload_dir$file_name\">$file_name</a>) е качен успешно! <br><br> »<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}else{

echo "Има проблем при преместването на вашия файл. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}

}else{



for($i=0;$i<count($limitedext);$i++){
if (($i<>count($limitedext)-1))$commas=", ";else $commas="";
list($key,$value)=each($limitedext);
$all_ext .= $value.$commas;
}



echo "<h1></h1>"
."<center><form method=\"post\" enctype=\"multipart/form-data\" action=\"\">"
."<center><input type=\"file\" name=\"filetoupload\"><br>"
."<center><input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\"><br>"
."<center><input type=\"Submit\" name=\"uploadform\" value=\"Качи\">"
."<center></form>";
}

}else{
echo 'не си логнат';
}

include("include/view_active.php");

?>
 
<?

include("include/session.php");
?>

<?
if (!$session->logged_in) {
echo "Моля, логнете се.";
exit;
}
?>
<?

if($session->logged_in){
echo "<h1></h1>";
echo "Welcome <b>$session->username</b>.<br>"
."<a href=\"userinfo.php?user=$session->username\">My Account</a><br>"
."<a href=\"useredit.php\">Edit Account</a> <br>";
if($session->isAdmin()){
echo "<a href=\"admin/admin.php\">Admin Center</a><br>";
}
echo "<a href=\"process.php\">Logout</a>";
}
else{

<center>
<?
$upload_dir = "upload/";
$size_bytes = 999151200;
$extlimit = "yes";
$limitedext = array(".gif",".jpg",".png",".jpeg", ".bmp", ".mp3", ".rar", ".zip", ".avi", ".pdf", ".mpeg", ".mpg", ".mpg4", ".3gp", ".exe");

if (!is_dir("$upload_dir")) {
die ("Грешка: Папката <b>($upload_dir)</b> не съществува");
}

if(isset($_POST['uploadform'])){


$file_tmp = $_FILES['filetoupload']['tmp_name'];
$file_name = $_FILES['filetoupload']['name'];

$file_size = $_FILES['filetoupload']['size'];


if (!is_uploaded_file($file_tmp)){
echo "<center><br><br>Грешка : Моля изберете файл за качване!. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}



if ($file_size > $size_bytes){
echo "Грешка : Файла е твърде голям. Той трябва да бъде под <b>". $size_bytes / 1024 ."</b> KB. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}

$ext = strrchr($file_name,'.');
if (($extlimit == "yes") && (!in_array(strtolower($ext),$limitedext))) {
echo("Грешка : Този тип файл не е позволен за качване. ");
exit();
}


if(file_exists($upload_dir.$file_name)){
echo "&nbsp<br><br>Името на файла <b>$file_name</b> вече е заето. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}
$snimkata = $site_link."/".$upload_dir."".$file_name;

$file_name = str_replace(' ', '_', $file_name);

if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) {

echo "<center><br><br>Файла (<a href=\"$upload_dir$file_name\">$file_name</a>) е качен успешно! <br><br>




»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}else{

echo "Има проблем при преместването на вашия файл. <br>»<a href=\"$_SERVER[PHP_SELF]\">НАЗАД</a>";
exit();
}

}else{



for($i=0;$i<count($limitedext);$i++){
if (($i<>count($limitedext)-1))$commas=", ";else $commas="";
list($key,$value)=each($limitedext);
$all_ext .= $value.$commas;
}



echo "<h1></h1>"
."<center><form method=\"post\" enctype=\"multipart/form-data\" action=\"\">"
."<center><input type=\"file\" name=\"filetoupload\"><br>"
."<center><input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\"><br>"
."<center><input type=\"Submit\" name=\"uploadform\" value=\"Качи\">"
."<center></form>";
}//Край на else


?>

?>

<?
}

include("include/view_active.php");

?>
 
Вие дадохте една точка за support на Zion .
Натиснете тук за да се върнете в темата.
 

Горе