好的,所以我的图像上传脚本/应用程序有问题。我一次又一次地尝试调试,但仍然无法找出问题所在。代码似乎很好,但由于某种原因,文件看起来没有保存在临时目录中,因此它可以移动到我服务器上的上传目录。我已经确定我要上传到的目录(上传),包括临时目录,设置了读/写/执行权限,并且上传在 php.ini 文件夹中设置为打开。我有一种感觉,文件永远不会保存到临时文件夹中,但我不确定如何检查是否是这种情况,因为我知道在脚本完成执行后文件被删除。我希望你们能帮助我,因为我不知道该怎么做。那里'
另外,这是我的问题所在。
if (is_uploaded_file($filetempname)) {
$final = "../public_html/uploads/" . $filename;
$result = move_uploaded_file($filetempname, $final);
if($result)
{
echo 'success';
echo "<br>Stored in: " . "public_html/uploads/" . $filename;
}
else
{
echo 'Image was not uploaded.';
}
$result= move_uploaded_file($filetempname, $final) 不断返回 false ,没有发生错误的迹象。我知道如果文件类型不正确,它将返回 false 并且不会复制任何内容,并且如果由于某种原因无法移动文件,它将返回 false 并且会发出警告消息说。但是,我根本没有收到任何消息。我所知道的是它返回 false 并且它没有做它应该做的事情。
<?php
error_reporting(E_ALL);
print_r($_FILES);
$filetype = $_FILES["file"]["type"];
$filename = $_FILES["file"]["name"];
$filetempname = $_FILES["file"]["tmp_name"];
$filesize = $_FILES["file"]["size"];
$error = $_FILES["file"]["error"];
$allowedExts = array("gif", "jpeg", "jpg", "png");
$extension = end(explode(".", $filename));
if ((($filetype == "image/gif")
|| ($filetype == "image/jpeg")
|| ($filetype == "image/jpg")
|| ($filetype == "image/pjepg")
|| ($filetype == "image/x-png")
|| ($filetype == "image/png"))
&& ($filesize < 1000000)
&& in_array($extension, $allowedExts)) {
if ( $error > 0) {
echo "Error: " . $error . "<br>";
}
else {
echo "Upload: " . $filename . "<br>";
echo "Type: " . $filetype . "<br>";
echo "Size: " . ($filesize / 1024) . " KB<br>";
echo "Stored in: " . $filetempname . "<br>";
if (file_exists("../public_html/uploads/" . $filename)) {
echo $filename . " already exists. ";
}
else {
if (is_uploaded_file($filetempname)) {
$final = "../public_html/uploads/" . $filename;
$result = move_uploaded_file($filetempname, $final);
if($result)
{
echo 'success';
echo "<br>Stored in: " . "public_html/uploads/" . $filename;
}
else
{
echo 'Image was not uploaded.';
}
}
}
}
}
else {
echo "Invalid file";
}
?>
这是表单的代码。
<form enctype="multipart/form-data" method="post" action="scripts/snap.php">
<!--<p>
<input id="plat" class="plat" name="plat" type="hidden" value="" />
<input id="plon" class="plon" name="plon" type="hidden" value="" />
</p>-->
<div class="row">
<label for="file">Select an image to Upload</label><br />
<input type="file" name="file" id="file" /><!--onchange="fileSelected();"-->
</div>
<div id="filename"></div>
<div id="fileSize"></div>
<div id="fileType"></div>
<div class="row">
<input type="submit" name="submit" value="Submit" />
<!--<input type="button" onclick="uploadFile()" value="Upload" />-->
</div>
<div id="progressNumber"></div>
</form>