我正在尝试插入一个上传到HTML中的图像文件以保存在我的数据库中,这样用户就可以将此图像设置为他们的个人资料图片。但现在我被我的代码困住了,我需要有人来帮助我。当我点击我的保存按钮时,它将回显保存文件失败。
profile.php
<div class="profile">
<form action="photo.php" method="POST" enctype="multipart/form-data">
<h2>Upload File</h2>
<label for="fileSelect">Filename:</label>
<input type="file" name="photo" id="fileSelect">
<input type="submit" name="submit" value="save">
<p><strong>Note:</strong> Only .jpg, .jpeg, .gif, .png formats allowed to a max size of 5 MB.</p>
</form>
</div>
save.php
<?php
include 'db.php';
if(isset( $_POST['photo'])){
$photo = $_POST['photo'];
$sql = "INSERT INTO users (photo) VALUE ('$photo')";
$query = mysqli_query($conn,$sql);
header("Location:profile.php");
}else{
echo "failure to save file!";
}
?>
答案 0 :(得分:1)
将图像保存在文件服务器上,并将保存它的路径保存在数据库中。这允许您直接访问此文件,并帮助您更好地将其输出给用户,而不是使用第二种方法。我更喜欢这个。
说明:upload file with php and save path to sql
您可以将图像内容保存到BLOB(二进制大对象)。
答案 1 :(得分:1)
您只需要在数据库中保存图像路径,您需要将图像本身存储在项目本地的目标中。然后,您可以使用数据库中保存的路径加载图像。
这里的答案为您提供了一个如何执行此操作的示例:How to store images in mysql database using php