繁体   English   中英

使用PHP服务器将文件上传到Web,无法正常工作

[英]File upload to web using PHP server, not working

我在127.0.0.1:8080上运行用于测试目的的php服务器,并且尝试使用save2web.php将图像保存到“ web”:

  if (isset($_FILES)){
  //put parameters in variables
  $filename = $_FILES['file']['name'];
  $fileTempName = $_FILES['file']['tmp_name'];
  $fileType = $_FILES['file']['type'];
  $fileSize = $_FILES['file']['size'];
  $fileError = $_FILES['file']['error'];

//if the file is a JPG and under 400K, proceed:
if (($fileType == "image/jpeg") && ($fileSize < 400000)){
    //if there's a file error, print it:
    if ( $fileError > 0){
        echo "Return Code" . $fileError . "<br />";
    }
    //if there's no error, print some HTML about the file:
    else {
        echo "Upload: " . $fileName . "<br />";
        echo "Type: " . $fileType . "<br />";
        echo "Size: " . ($fileSize/1024) . " Kb<br />";
        echo "Temp file: " . $fileTempName . "<br />";

        //if the file already exists,
        //delete the previous version:
        if (file_exists($fileName)){
            unlink($fileName);
        }
        //move the file from the temp location to
        //this directory:
        move_uploaded_file($fileTempName, $fileName);
        echo "Uploaded file stored as: ".$filename;
        }
    }
    //if the file is not a jpg or too big, say so:
    else{
        echo "File is not a JPEG or too big.";
    }
}
 ?>

 <html>
 <body>
 <form action="save2web.php" method="post"
 enctype="multipart/form-data">
 <label for="file">Filename:</label>
 <input type="file" name="file" id="file" />
 <br />
 <input type="submit" name="submit" value="Upload" />
 </form>
 </body>
 </html>

但是,当我在浏览器上运行脚本时,得到:

 Upload: 
 Type: image/jpeg
 Size: 45.728515625 Kb
 Temp file: /private/var/tmp/phpEgyvKC

Warning: move_uploaded_file(): Filename cannot be empty in /Users/me/Documents/CODE/Processing/sketches_3/sketches/apps/NetworkedCat_ImageCaptureUpload/save2web.php on line 31

Warning: move_uploaded_file(): Unable to move '/private/var/tmp/phpEgyvKC' to '' in /Users/me/Documents/CODE/Processing/sketches_3/sketches/apps/NetworkedCat_ImageCaptureUpload/save2web.php on line 31存储为:Peti2.jpg

“第31行”是move_uploaded_file()

这似乎不是权限问题,因为我已将/private/var/tmp以及目标文件夹上的chmod 777权限更改为

我想念什么?

目的地不是目录,而是文件;

在所有代码之前,设置:

$path='img.jpg'

然后:

move_uploaded_file($fileTempName, $path);

图片将在那里上传; 如果path上的图像名称相同,则将替换文件。

设置您要上传文件的路径

$ path ='您的文件夹路径';

move_uploaded_file($fileTempName, $path.$fileName);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM