首页 > 解决方案 > 数据未插入数据库 php、mysql

问题描述

无法将数据插入 DB 。当我删除 user_id 然后插入数据。请检查下面我的代码并帮助我。

function adddata($data) {
    global $db;
    if (is_array($data)) {
        $stmt = $db->prepare('INSERT INTO `pay` (id, payment, status, itemid, time, user_id) VALUES(?, ?, ?, ?, ?, ?');

        $userid = 2;
        $stmt->bind_param(
             'sdssss',
            $data['txn_id'],
            $data['payment_amount'],
            $data['payment_status'],
            $data['item_number'],
            date('Y-m-d H:i:s'),
            $userid
        );
        $stmt->execute();
        $stmt->close();
        return $db->insert_id;
        }
        return false;
        }

标签: phpmysqlapimysqli

解决方案


这很微妙,但是您的 SQL 字符串缺少右括号:

$stmt = $db->prepare('INSERT INTO `pay` (...) VALUES (?, ?, ?, ?, ?, ?)');

VALUES列表未正确关闭的地方。

通过启用异常mysqli可以检测和解决许多问题,因此不容易忽略错误。这应该在您的日志中显示为 SQL 错误。


推荐阅读