Upload script

fena

Super Moderator
Код:
<?php
@session_start(); 
$site_name = $_SERVER['HTTP_HOST']; 
$url_dir = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']); 
$url_this =  "http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; 

$upload_dir = "files/";
$upload_url = $url_dir."/files/";
$message ="";

/************************************************************ 
*     Create Upload Directory
************************************************************/
if (!is_dir("files")) { 
  if (!mkdir($upload_dir))
     die ("upload_files directory doesn't exist and creation failed");
  if (!chmod($upload_dir,0755))
     die ("change permission to 755 failed.");
}

/************************************************************ 
*     Process User's Request
************************************************************/

if ($_REQUEST[del])  {
print "<script>window.location.href='$url_this?message=deleted successfully'</script>";
}
else if ($_FILES['userfile']) {
  $message = do_upload($upload_dir, $upload_url);
  print "<script>window.location.href='$url_this?message=$message'</script>";
}
else if (!$_FILES['userfile']);
else
   $message = "Invalid File Specified.";

/************************************************************ 
*     List Files
************************************************************/
$handle=opendir($upload_dir);
$filelist = "";
while ($file = readdir($handle)) {
   if(!is_dir($file) && !is_link($file)) {
      $filelist .= "<br><a href='$upload_dir$file'>".$file."</a>";

   }
}

function do_upload($upload_dir, $upload_url) {

   $temp_name = $_FILES['userfile']['tmp_name']; 
   $file_name = $_FILES['userfile']['name'];
   $file_type = $_FILES['userfile']['type'];
   $file_size = $_FILES['userfile']['size'];
   $result    = $_FILES['userfile']['error'];
   $file_url  = $upload_url.$file_name;
   $file_path = $upload_dir.$file_name;

   //File Name Check
    if ( $file_name =="") {
       $message = "Invalid File Name Specified"; 
       return $message;
    }
    //File Size Check
    else if ( $file_size > 999999999999999999999) { 
       print $file_size; 
        $message = "Ðàçìåðà íà ôàéëà å ìíîãî ãîëÿì."; 
        return $message; 
    }
    //File Type Check 
    else if ( $file_type == "text/plain" 
         || $file_type == "application/force-download" 
         || $file_type == "application/octet-stream") { 
        $message = "Sorry, You cannot upload any script file" ; 
        return $message; 
    }

    $result  =  move_uploaded_file($temp_name, $file_path);
    if (!chmod($file_path,0755))
        $message = "change permission to 755 failed.";
    else
      $message = ($result)?"$file_name($file_type) uploaded successfully." :
                "Somthing is wrong with uploading a file.";

    return $message;
}

?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<table  style="width: 40%" align="center" valign="top"> <br />
  <tr> <br />
    <td> <br />
<div align="center" style="font-size: 19px; font-weight: bold"> <br />
</table> <br />
<body bgcolor="#667987"><center> <br />
   <font color=red><?=$_REQUEST[message]?></font> <br />
   <form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post"> <br />
     Êà÷è ôàèë: <input type="file" id="userfile" name="userfile" size="20"> <br />
     <input type="submit" name="upload" value="Upload"> <br />
   </form> <br />
    <br />
   <b>До сега потребителите ни са качили следните файлове:</b>
   <hr style="color:yellow; background-color:black; height:1px;
  margin-right:0; text-align:right; border:0px">
   <?=$filelist?>
</center>

<?
if ($_REQUEST[debug]==1) print "------------------Debugging Info----------------<br>";
if ($_REQUEST[debug]==1) print "site=$site_name<br>dir=$url_dir<br>url=$url_this<br>";
if ($_REQUEST[debug]==1) print "upload dir=$upload_dir<br>upload url=$upload_url<br>";
?>


Имаше го някаде, но не го намирам, та да го има и тук :)
Взех го от 1 друг сайт, но ми се наложи да махам 100тина <br />, защото някой php мастър е решил че те се ползват и в PHP
 
значи въпроса ми е: дали трябва нещо да се дописва в този скрипт или само да го направя на фаил-upload.php,защото нещо не ми се получава :? ако може да ми обесните по подробно какво да направя ще съм безкраино признателен
 
В случея трябва да създадеш папка в същата директория на скрипта и папката да се казва files
 
нещо не става показва ми това -
и не става нищо нито мога да уплоадвам нито нищо
 
Най-вероятно не си създал папката...значи ако скрипта е в /upload папката files трябва да е така /upload/files тоест в същатат папка създаваш папка с име files и сигурно защото си на windows и махаш отметката Read Only ако я има
 
пак е същото слагам upload.php в папка upload и добавям папка files и когато го отворя в браузъра и закача фаи за уплоад нищо не се получава.каде може да бъркам?
 
еи тука сме го коментирали този скрипт аз го бях дал преди доста време
http://web-tourist.net/forum/viewtopic.php?t=6&highlight=upload+script

p.s. fena интересмо ми е от кои сайт си го взел :) защото аз го ползвам от много отдавна в 1вия ми сайт още http://ogledalo.5gigs.com/mute/pic/upload.php
 
незнам какво става обаче при мен мре неще.трябва ли нещо да се променя или дописва в този скрипт?значи правя всичко : директория upload ,вътре папка files и upload.php и нищо не се получава или по точно се получава това:
 
незнам защо се получава така току що го пробвах на моя хост и стана
 
Сървара ти подържали пхп , променили change permission на 777
ChangePermissions.gif
 
staf каза:
Сървара ти подържали пхп , променили change permission на 777
ChangePermissions.gif
да поддържа пхп,а това каде да го променя?
 
mute каза:
на какъв хост си ? имашли cpanel ?
netguard.bg незнам дали има це панел даже незнам какво е це панел :cry:
 
ами цепанел е контролния панел на сайта .
имали някакъв фаил менаджер ето как е при мен
 
При мене става ... :?:
 
А как да го нагласа да се ка4ва в груга директория???
 
еми пич виж ся отваряш ноте пад ... слагаш дадения ти пхп код вътре без да правиш промени ... после даваш саве ас и слагаш име уплоад.пхп мн е важно и разширението ти да е пхп ;) нагласяш отдолу олл филес ... после отваряш фтп навигатора ти ... свързваш се със сървара ти ... кликаш с дясно копче и даваш направа на нова папка кращаваш я уплоад после цакаш 2 пъто върху тазо папка и така влизаш в нея ... после цакаш пак с дясно копче и правиш нова папка която да се казва "files" после качваш "upload.php" (предполагам знаеш как :) ) после отиваш на бролзера ти и от там вече знаеш как :) ако от това обяснение не разбереш как ми пиши на лс ;)
 
хаха :) обяснение а ? :lol: :lol: :lol:
 

Горе