在PHP中,是否可以将文件上传到服务器?
问题描述:
在PHP中,是否可以将文件上传到服务器?如果是这样,那么我如何创建一个上传表单并将文件插入到特定页面?任何扩展图像:.jpeg .gif或文件:.txt .pdf等我使用XAMPP(localhost查看我的网站)。在PHP中,是否可以将文件上传到服务器?
我已经尝试过很多教程,但有很多错误。
这是这个HTML文件:
<form action="fileupload.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="Submit" />
</form>
这里是PHP脚本:
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
结果是这个样子:
上传:(文件在这里)
类型:图片/ jpeg
大小:757.521484375 Kb
中存储:在C(临时文件:
但每当我发现我的tmp文件夹的文件。无处可寻。
答
function getExtension($str)
{
$i = strrpos($str,".");
if (!$i)
{
return "";
}
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$extension = getExtension($filename);
$extension = strtolower($extension);
if($extension=="jpg" || $extension=="jpeg" || $extension=="gif" || $extension=="txt" || $extension=="pdf"){
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />";
move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" .date("d_m_h_i_s"). $_FILES["file"]["name"]);
}
getExtension函数有助于获取文件的扩展名。这些文件将被上传到上传文件夹。
你有没有先试过自己?如果是,那么告诉我们问题 –
什么Harshal的意思是说http://www.w3schools.com/php/php_file_upload.asp – gb056
http://www.w3fools.com/ – DanFromGermany