我想更新我的数据库中的图像。但是当我在我的表单中更新它时,我的数据库中的值对于图像来说是空的。
这是我用来更新图像和其他值的 PHP 脚本。值得注意的是,只有我的图像值会清空我的数据库中的其余值正在更新。
<?php
if(isset($_POST["submit"]) && isset($_GET['id']) && $_GET['id'] == "type") {
include('config.php');
$imgFile = $_FILES['user_image']['name'];
$tmp_dir = $_FILES['user_image']['tmp_name'];
$imgSize = $_FILES['user_image']['size'];
if($imgFile)
{
$upload_dir = 'user_images/'; // upload directory
$imgExt = strtolower(pathinfo($imgFile,PATHINFO_EXTENSION)); // get image extension
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // valid extensions
$userpic = rand(1000,1000000).".".$imgExt;
if(in_array($imgExt, $valid_extensions))
{
if($imgSize < 5000000)
{
unlink($upload_dir.$edit_row['opzoekImage']);
move_uploaded_file($tmp_dir,$upload_dir.$userpic);
}
else
{
$errMSG = "Sorry, your file is too large it should be less then 5MB";
}
}
else
{
$errMSG = "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
}
}
else
{
// if no image selected the old image remain as it is.
$userpic = $edit_row['opzoekImage']; // old image from database
}
$sql2 = "UPDATE tblOpzoek SET opzoekName='".$_POST["typenaam"]."', opzoekValue='".$_POST["typewaarde"]."', opzoekImage='".$userpic."' WHERE opzoekId=".$_POST["typeid"]."";
if($db->query($sql2) === TRUE) {
header('Location: ' . $_SERVER['HTTP_REFERER']);
} else {
echo "<script type= 'text/javascript'>alert('Error: " . $sql2 . "<br>" . $db->error."');</script>";
}
}
?>
这是 config.php 代码:
<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', 'root');
define('DB_DATABASE', 'offerteBVDO');
$db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
?>
更新:
SQL 查询现在输出: UPDATE tblOpzoek SET opzoekName='Greenline Veranda', opzoekValue='greenline_veranda', opzoekImage='12443.jpg' WHERE opzoekId='1'
但是在数据库中,图像没有前面语句中的值。
当我在我的 phpmyadmin 中插入 SQL 查询时它正在工作,为什么它在我的 PHP 中不起作用?
您的更新查询似乎有误,请更新此查询。
$sql2 = "UPDATE tblOpzoek SET opzoekName='".$_POST["typenaam"]."',
opzoekValue='".$_POST["typewaarde"]."',
opzoekImage='".$userpic."'
WHERE opzoekId='".$_POST["typeid"]."'";
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句