我试图在我的localhost服务器上保存使用HTML表单上传的图像(使用Xampp),但是虽然没有错误,但文件并未保存在任何地方。 这是形式,非常简单:
<form id="form1" action="result.php" method="post" enctype="multipart/form-data">
Select image to upload:
<input type="file" name="imguploaded" id="imguploaded" accept=".png, .jpg, .jpeg"></br>
<input class="btn btn-outline-danger btn-lg" id="inputbtn" type="submit" value="Upload Image" name="submit">
</form>
这是PHP代码(在result.php上):
<?php
$result=false;
$error=false;
if (isset($_FILES['imguploaded'])){
$nomefile = strtolower($_FILES['imguploaded']['name']);
$path = "caricamenti/$nomefile";
move_uploaded_file($_FILES['imguploaded']['name'], $path);
echo($path);
}
?>
路径存在,并且它位于.PHP文件的同一文件夹中。
答案 0 :(得分:2)
在move_uploaded_file($_FILES['imguploaded']['name'], $path);
中,第一个参数不正确。它应该是php存储在其中的临时路径,您可以在$_FILE['imguploaded']['tmp_name']
中找到它。
所以将该行更改为
move_uploaded_file($_FILES['imguploaded']['tmp_name'], $path);
相关docs
请务必:
现在我可以轻松上传php脚本并执行它。
答案 1 :(得分:-1)
试试这个:
$file_name= $_FILES['imguploaded']['name'];
$file_tmp_name= $_FILES['imguploaded']['tmp_name'];
$div= explode('.',$file_name );
$file_txt= strtolower(end($div));
$unique_image= substr(md5(time()),0,10).".".$file_txt;
$uploaded_image= "caricamenti/".$unique_image;
move_uploaded_file($file_tmp_name,$uploaded_image);