我正在尝试动态上传图片。 HTML代码是:
<form method="post" action="" name="form1" id="form1" enctype="multipart/form-data">
<label for "file">Select Picture</label><br>
<input type="file" name="file" id="file"><br>
<input type="hidden" value="<?php echo $_POST['pic'];?>" name="pic">
<input type="submit" value="Upload" name="upload" id="upload"><br>
</form>
在我编写以下代码后,它显示错误:&#34; move_uploaded_file()[function.move-uploaded-file]:copy()函数的第二个参数不能是目录&#34;并且&#34;无法移动&#39; C:\ xampp \ tmp \ phpB67C.tmp&#39;到&#39;图像/&#39; &#34 ;.这个的PHP代码是:
if(isset($_POST['upload'])){
$pic=$_POST['pic'];
move_uploaded_file($_FILES["file"]["tmp_name"], "images/".$pic); //."jpg");
}
请告诉我如何删除错误并能够添加和查看图片。
答案 0 :(得分:1)
像这样改变
您可以使用$_FILES["file"]["name"]
变量获取文件名。因此,如果上传任何文件,您必须使用此方法获取文件名,而不是使用$_POST
if(isset($_POST['upload']))
{
$pic=$_FILES["file"]["name"];
move_uploaded_file($_FILES["file"]["tmp_name"], "images/".$pic); //."jpg");
}
答案 1 :(得分:0)
我已对您的表单进行了一些更改
<form method="post" action="" name="form1" id="form1" enctype="multipart/form-data">
<label for "file">Select Picture</label><br>
<input type="file" name="file" id="file"><br>
<input type="hidden" value="<?php if(isset($name)){ echo $name; } ?>" name="pic">
<input type="submit" value="Upload" name="upload" id="upload"><br>
和PHP代码在这里,
将MyUploadFolder
名称更改为您的文件夹路径。
if(isset($_FILES['file']['name'])){
$name= $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
if(move_uploaded_file($tmp_name,"MyUploadFolder/".$name))
{
echo 'Uploaded';
}
else{
echo 'Please Choose a File';
}
}