php:无法将文件上传到服务器

时间:2011-05-04 14:02:41

标签: php

嘿,我不是一个PHP编码器

我正在使用以下内容将文件上传到服务器acn任何正文帮助我这个代码有什么问题

<?php 

$uploaddir = './uploads/';
$file = basename($_FILES['userfile']['name']);
$uploadfile = $uploaddir . $file;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
        echo "http://iphone.zcentric.com/uploads/{$file}";
}

?>

提前完成

3 个答案:

答案 0 :(得分:2)

我没有看到PHP代码有任何问题,但没有错误就很难分辨出发生了什么。

可能导致上传不起作用且可能无法返回错误的事情:

  1. 确保您在表单标记中有enctype="multipart/form-data

    <form enctype="multipart/form-data" action="__URL__" method="POST">

  2. 通过调整以下PHP ini变量确保PHP接受输入:

      

    http://us.php.net/manual/en/ini.core.php#ini.post-max-size   http://us.php.net/manual/en/info.configuration.php#ini.max-input-time   http://us.php.net/manual/en/ini.core.php#ini.upload-max-filesize

  3. 最后,确保为临时上传文件夹(http://us.php.net/manual/en/ini.core.php#ini.upload-tmp-dir)和要将文件移动到的文件夹正确设置权限。如果它是Windows服务器,您可能还会遇到继承问题,需要您更改默认上载目录。

答案 1 :(得分:0)

你可以发布你得到的错误吗?你的代码看起来没问题。上传文件夹必须留在你运行代码的目录的上方。然后它应该工作。如你的脚本文件夹这样/ test / script / abc.php然后你的上传目录应该是/ test / uploads。

答案 2 :(得分:0)

index.php
<!DOCTYPE html>
<html>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data">
    Select image to upload:
    <input type="file" name="fileToUpload[]" id="fileToUpload" multiple="">
    <input type="submit" value="Upload Image" name="submit">
</form>

</body>
</html>
upload.php
<?php
//$target_dir = "uploads/";
/*$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
*/


if(count($_FILES['fileToUpload']['name']) > 0)
{

         $i=0;
         while($i<count($_FILES['fileToUpload']['name'])) 
         {
          $filen = $_FILES["fileToUpload"]['name']["$i"]; 
          $path = 'uploads/'.$filen;
          $imageFileType = pathinfo($path,PATHINFO_EXTENSION);
          if (file_exists($path)) {
           echo "Sorry, file already exists.";
           }else  if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
           && $imageFileType != "gif" ) {
           echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";

          }

               else if(move_uploaded_file($_FILES["fileToUpload"]['tmp_name']["$i"],$path)) 
               {
               //echo "The file ". basename( $_FILES["fileToUpload"]["name"]["$i"]). " has been uploaded.";
               $files=$_FILES["fileToUpload"]["name"]["$i"];
               echo $files;?><img src="<?php echo $path;?>" style="width:200px;height:200px" alt="" >
               <?php
               } 
               $i++;
          }



}
?>