【发布时间】:2014-03-14 14:58:07
【问题描述】:
从 Tmp 文件夹移动上传的图像?
我正在按照教程将图像存储到服务器上的文件夹中。
除非我在执行此操作时弄错了,否则图像总是首先存储到一个临时文件夹中,然后再移动。问题是我使用的是共享主机,所以我不知道 tmp 文件夹在哪里,所以我收到了这个错误:
无法将 /tmp/phpfwJ45w 移动到 uploads/image.jpg
上传次数设置为 777。
是否可以手动设置临时文件夹的路径?例如
https://dummydomain.com/tempuploads/
如果没有,我如何找到 tmp 文件夹的完整路径,或者是否有其他原因导致图像未上传?
我读过最好将图像存储到文件夹而不是数据库表中?
<?php
include "connect.php";
function UploadOne($fname)
{
$uploaddir = 'http://dummydomain.com/uploads/';
if (is_uploaded_file($fname['tmp_name']))
{
$filname = basename($fname['name']);
$uploadfile = $uploaddir . basename($fname['name']);
if (move_uploaded_file ($fname['tmp_name'], $uploadfile))
$res = "File " . $filname . " was successfully uploaded and stored.<br>";
else
$res = "Could not move ".$fname['tmp_name']." to ".$uploadfile."<br>";
}
else
$res = "File ".$fname['name']." failed to upload.";
return ($res);
}
?>
<body>
<?php
if ($_FILES['picture']['name'] != "")
{
$res = UploadOne($_FILES['picture']);
$filname = $_FILES['picture']['name'];
echo ($res);
}
?>
<h1>UPLOADING FILES</h1>
<form name="fupload" enctype="multipart/form-data" action="uploads.php" method="post">
<input type="file" name="picture" />
<input type="submit" value="Submit" />
</form>
</body>
【问题讨论】: