PHP MySQL 更新查询数组(0) { }

标签 php mysql

谁能帮我理解为什么我的查询更新没有更新我数据库中的数据。

这是我的 php 代码:

<?php

$code = $_GET['code'];
$n1= $_GET['n1'];
$n2= $_GET['n2'];
$n3 = $_GET['n3'];

try {
  $connexion= new PDO('mysql:host=localhost;dbname=data','mydata','password');
  $sql_update = "UPDATE data.check SET  numb_1='".$n1."',numb_2='".$n2."','numb_3'='".n3."' WHERE 'code_product' =".$code;
  $query = $connexion-> prepare($sql_update);
  $query -> execute();
  $data_update= $query -> fetchAll(PDO::FETCH_ASSOC);
}

catch(PDOException $e)
{
 echo "<br>" . $e->getMessage();
}

感谢您的帮助。

最佳答案

1)改变

$sql_update = "UPDATE data.check SET  numb_1='" . $n1 . "',numb_2='" . $n2 . "','numb_3'='" . n3 . "' WHERE 'code_product' =" . $code;

$sql_update = "UPDATE data.check SET  numb_1='" . $n1 . "',numb_2='" . $n2 . "','numb_3'='" . $n3 . "' WHERE `code_product` =" . $code;

=> 在 n3 中您忘记添加 $。并且,用反引号替换单引号以括起列名。

更新代码

<?php

$code = $_GET['code'];
$n1 = $_GET['n1'];
$n2 = $_GET['n2'];
$n3 = $_GET['n3'];

try {

  $connexion = new PDO('mysql:host=localhost;dbname=data', 'mydata', 'password');

  $sql_update = $connexion->prepare("UPDATE `data`.`check` SET numb_1 = :numb_1 , numb_2 = :numb_2, numb_3 = :numb_3 WHERE `code_product` = :code_product");
  $sql_update->execute(array(':numb_1' => $n1,':numb_2'=>$n2, ':numb_3'=>$n3,':code_product'=>$code));


  $stmt = $connexion->prepare("SELECT * FROM `data`.`check` WHERE code_product=:code_product");
  $stmt->execute(array(':code_product'=>$code));
  $data_update= $stmt -> fetchAll(PDO::FETCH_ASSOC);

} catch (PDOException $e) {
  echo "<br>" . $e->getMessage();
}
?>

关于PHP MySQL 更新查询数组(0) { },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38992659/

相关文章:

php - PHP 5.4 对象取消引用是否成功缓解了此 DI 容器中静态存储参数的缺点?

php - Dompdf 将 Canvas 转换为 pdf

php - 如何更改wordpress移动主题中搜索栏的位置

php - 动态 <div> 内容变化 <select>

php - 如何制作MySQL的WEE​​K()和YEARWEEK()函数?

php - 在 PHP 中,如何从 mysql 数据库中检索文件并作为电子邮件附件发送?

php - Laravel 中的数组推送

mysql - 如何更改 Django 创建的数据库的列名称(来自 models.py)?

mysql - Mysql默认的服务器端取数是多少

php - 使用带有 UTF-8 字符集的 PDO 时出错