【发布时间】:2012-03-18 06:15:31
【问题描述】:
我在使用一个简单的 php 脚本时遇到了问题,我可以在其中将文件上传到某个文件夹。我尝试了多种方法,但仍然没有成功。
我的代码中的任何错误或有关如何纠正问题的建议都将得到妥善处理。
主要 PHP 代码:
<p>Browse For a File on your computer to upload it!</p>
<form enctype="multipart/form-data" action="upload_photos.php" method="POST">
Choose Photo:
<input name="userfile" type="file" /><br />
<input type="submit" value="Upload Photo" />
<?PHP
if ($userfile_size>250000)
{$msg=$msg."Your uploaded file size is more than 250KB so please reduce the file size and then upload.<BR>";
$file_upload="false";}
else{
if (!($userfile_type<>"image/jpeg" OR $userfile_type<>"image/tiff" OR $userfile_type<>"image/png"))
{$msg=$msg."Your uploaded file must be of JPG, PNG, or tiff. Other file types are not allowed<BR>";
$file_upload="false";}
}
?>
</form>
</label>
</form>
点击时调用的 PHP 代码 (upload_photos.php)
<?php
$target_path="uploads/";
chmod("uploads/", 0755);
$target_path=$target_path . basename( $_FILES['uploadedfile']['name']);
$test=move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path);
if($test) {
echo "The file ". basename( $_FILES['uploadedfile']['name']).
" has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
var_dump($test);
}
?>
我不明白为什么我的最终结果 [点击“上传文件”按钮后] 只包含以下结果:
“上传文件出错,请重试!bool(false)”
还有一件事:我还尝试使用 $target_path 和 chmod 的完整计算机文件夹路径。
有人看到我做错了吗?
【问题讨论】:
-
谁拥有
uploads目录?如果不是apache(或服务器运行的任何用户),这可能不起作用。