php - 无法使用php将图像存储到数据库
问题描述
我正在尝试从 HTML 表单上传我的数据库中的图像。我已经编写了 PHP 代码,但有一条错误消息
<form action="login.php" method="post" enctype="multipart/form-data">
user<input type="text" name="user_name1" required />
password<input type="password" name="password1" required />
Email<input type="email" name="email11" required />
Upload any image you want<input type="file" name="image">
<input class="submit" type="submit" name="submit2" value="sign up"/>
</form>
这是PHP代码
<?php
if(array_key_exists('submit2',$_POST))
{
$user=$_POST['user_name1'];
$pass=$_POST['password1'];
$email=$_POST['email11'];
$image=addcslashes($_FILES['image']['tmp_name']);
$image_name=addcslashes($_FILES['image']['name']);
$image2=file_get_contents($image);
$image3=base64_encode($image2);
$query9="insert into login values('$user','$pass','$email','$image3','$image_name')";
if(mysqli_query($conn,$query9))
echo "Insert is successful";
else
echo "Error ".$query9."<br>".mysqli_error($conn);
}
mysqli_close($conn);
?>
这是我执行代码后得到的错误
警告:addcslashes() 需要 2 个参数,其中 1 个在
解决方案
您正在使用需要 2 个参数的addcslashes,第一个是字符串,第二个是要转义的字符列表。
我相信您想使用addslashes,它将在需要转义的字符之前返回带有反斜杠的字符串。