使用PHP PDO更新图像
社区的朋友们好,我正在上传一张图片到MySQL数据库,我没有问题,一切正常。 但当我更新时,图像变为空白,如图所示: 这是我用来更新记录的代码:使用PHP PDO更新图像,php,mysql,pdo,Php,Mysql,Pdo,社区的朋友们好,我正在上传一张图片到MySQL数据库,我没有问题,一切正常。 但当我更新时,图像变为空白,如图所示: 这是我用来更新记录的代码: public function update($id,$fname,$lname,$email,$contact,$imagen,$fecha) { try { if(!empty($_FILES['imagen']['name'])){ $nnombre
public function update($id,$fname,$lname,$email,$contact,$imagen,$fecha)
{
try
{
if(!empty($_FILES['imagen']['name'])){
$nnombre=$_FILES['imagen']['name'];
$ruta=$_FILES['imagen']['tmp_name'];
$destino = "img/productos/".$nnombre;
$imagen = $nnombre;
copy($ruta, $destino);
}
$stmt=$this->db->prepare("UPDATE productos SET first_name=:fname,
last_name=:lname,
email_id=:email,
contact_no=:contact,
imagen=:imagen,
fecha=:fecha
WHERE id=:id");
$stmt->bindparam(":fname",$fname);
$stmt->bindparam(":lname",$lname);
$stmt->bindparam(":email",$email);
$stmt->bindparam(":contact",$contact);
$stmt->bindparam(":imagen",$imagen, PDO::PARAM_STR);
$stmt->bindparam(":fecha",$fecha);
$stmt->bindparam(":id",$id);
$stmt->execute();
return true;
}
catch(PDOException $e)
{
echo $e->getMessage();
return false;
}
}
所有这些都已更新,但图像不更新
我应该这样做。只有在实际上传图像时才更新图像。当没有图像时,您不应将其包含在
prepare语句中,并在bindParam
ok中删除它,请解决我的问题:)如果!空{我放入我的代码变量映像}否则{我的代码中不放入变量映像}