这段代码给我错误
move_uploaded_file()恰好需要2个参数,给定3个参数
if(isset($_POST["upload"])){
$target="images/".basename($_FILES['image']['name']);
$db=mysqli_connect("localhost","root","","photos");
$image=$_FILES['image']['name'];
$text=$_POST['text'];
$sql="INSERT INTO images(image,text) VALUES ('$image','$text')";
mysqli_query($db,$sql);
if(move_uploaded_file($_FILES['image'],['tmp_name'],$target)){
$msg="image upload successful";
}else{
$msg="there was a problem uploading the image";
}
}
答案 0 :(得分:2)
您的代码语法错误:
if(move_uploaded_file($_FILES['image'],['tmp_name'],$target)){
--^--
逗号用于分隔参数,因此move_uploaded_file
带有3个参数,第2个是具有一个字符串元素“ tmp_name”的数组。您应该删除该逗号,因为它不需要为数组建立索引。
还要注意,您永远不要将用户输入直接放在SQL查询字符串中,这很危险。阅读有关SQL注入和PHP的PDO驱动程序的更多信息。