php - mysqli 更新不起作用

标签 php mysql sql mysqli

        $sql3 = "SELECT order_id FROM orders WHERE order_code = '$order_code'";
        $result3 = $conn->query($sql3) or exit("Error code ({$conn->errno}): {$conn->error}");

        $row = mysqli_fetch_assoc($result3);
        $order_id = $row['order_id'];       

        $deliv_date = date('Y-m-d');

        $sql = "UPDATE orders SET deliv_date = $deliv_date
                        WHERE order_id = $order_id";
        $result = $conn->query($sql) or exit("Error code ({$conn->errno}): {$conn->error}");



        $sql1 = "INSERT INTO invoice VALUES (0,'$order_code','$deliv_date','','$order_id')";

        $result1 = $conn->query($sql1) or exit("Error code ({$conn->errno}): {$conn->error}");

以上是我正在使用的代码。最后一行的插入工作正常,并选取正确的 $order_code、$deliv_date 和 $order_id。更新时没有错误,但字段“deliv_date”从未设置为 $deliv_date。我只是从逻辑上看不出问题所在。有人能发现吗?我一直在爬墙。

谢谢。

最佳答案

您需要将日期用引号引起来:

$sql = "UPDATE orders SET deliv_date = $deliv_date
                    WHERE order_id = $order_id";

应该是

$sql = "UPDATE orders SET deliv_date = '$deliv_date' <-- HERE
                    WHERE order_id = $order_id";

关于php - mysqli 更新不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22025858/

相关文章:

php - phpunit selenium2 扩展中的显式等待

android - 如何从在线数据库kinvey获取数据

mysql - 如何编写 sql 查询来检查数据库中是否存在特定表?

PHP7 - MySQLI 将站点移动到新服务器后的错误处理问题

php - 访问被拒绝使用 PHP 连接到 MySQL

sql - 用于创建组合的 Postgres 查询

mysql - MySQL-从版本控制数据库获取最新版本的文件内容

php - 与关联数组中的 array_combine/两个数组相反的函数

php - 字典数据库上的 "Did you mean"特征

PHP 无法在 MySQL 数据库中插入值