我想允许用户在我的网站上上传他们的个人资料图片的图片(文件)。他们通过HTML表单上传图像,但我无法将文件移动到我想要的文件夹。我不想乱用php.ini文件来更改上传路径。我想使用move_uploaded_file()。我尝试使用$ tmp = $ _FILES ['picture'] ['tmp_name']和var_dump($ tmp),但它一直返回值(0)。所以,我认为问题与此有关。这是我的代码,
这是我的HTML:
<form enctype="multipart/form-data" method="post" action="upload_img.php">
<input type="hidden" name="MAX_FILE_SIZE" value="32768"/>
<input type="text" name="name" value=""/>
<input type="file" name="picture" value="picture"/>
<input type="submit" name="submit" value="upload"/>
</form>
我的PHP:
<?php
define('GW_UPLOADPATH', 'images/');
$picture= $_FILES['picture']['name'];
$name= $_POST['name'];
$tmp= $_FILES['picture']['tmp_name'];
var_dump($picture);
var_dump($name);
var_dump($tmp);
$connect= mysqli_connect(//connect params)
or die('error connecting with the database');
$query= "INSERT INTO pics (pic, name) VALUES ('$picture', '$name')";
$target= GW_UPLOADPATH . $picture ;
if (move_uploaded_file($_FILES['picture']['tmp_name'], $target);))
{
mysqli_query($connect, $query)
or die('error with query');
}
?>
答案 0 :(得分:1)
您的问题可能与php的upload_max_filesize和post_max_size有关。检查php.ini中的这两个设置,确保您尝试上传的文件不大于其中任何一个。