变量数量与准备好的语句中的参数数量不匹配

安杰洛
public function insert_new_listing($listing_assoc_array) {
    global $public_connection;
    $date = (string) date("Y-m-d");
    $hit_count = 0;
    if ($stmt = new mysqli_stmt($public_connection, 'INSERT INTO laptops (brand_name, title, description, price, discount, last_change_date, hit_count) VALUES (?,?,?,?,?,?,?)')) {
        /* bind parameters for markers */
        $stmt->bind_param(
                "sssdisi", 
                $listing_assoc_array['brand_name'], 
                $listing_assoc_array['title'], 
                $listing_assoc_array['description'], 
                $listing_assoc_array['price'], 
                $listing_assoc_array['discount'], 
                $date,
                $hit_count
        );

        /* execute query */
        $stmt->execute();

我收到错误消息:变量数与准备好的语句中的参数数不匹配。

我在prepare语句和bind_param中具有正确的number(7),所以我不知道为什么会这样。

菲尔

正如我在上面的评论中提到的那样,不可能new mysqli_stmt()返回值。您应该改为使用该mysqli::prepare方法,例如...

public function insert_new_listing(mysqli $conn, array $listing) {
    $stmt = $conn->prepare('INSERT INTO laptops (brand_name, title, description, price, discount, last_change_date, hit_count) VALUES (?,?,?,?,?,NOW(),0)');
    if (!$stmt) {
        throw new Exception($conn->error, $conn->errno);
    }
    /* bind parameters for markers */
    $stmt->bind_param('sssdi', 
        $listing['brand_name'], 
        $listing['title'], 
        $listing['description'], 
        $listing['price'], 
        $listing['discount']);

    /* execute query */
    if (!$stmt->execute()) {
        throw new Exception($stmt->error, $stmt->errno);
    }

您可能会注意到,我使用的是文字0NOW()而不是绑定$hit_count$date无法看到绑定已知静态值的任何理由。

我也将mysqli实例作为方法依赖项传入,而不是依赖于全局变量。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

变量数量与准备好的语句中的参数数量不匹配

来自分类Dev

mysqli_stmt :: bind_param():变量数量与准备好的语句中的参数数量不匹配

来自分类Dev

MySQL-变量数与准备好的语句中的参数数不匹配

来自分类Dev

出现以下错误:变量数与准备好的语句中的参数数不匹配

来自分类Dev

mysqli_stmt :: bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

来自分类Dev

mysqli_stmt :: bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

来自分类Dev

mysqli_stmt_bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

来自分类Dev

绑定变量的数量与 php 和 android 中准备好的语句中的字段数量不匹配

来自分类Dev

mysqli_stmt :: bind_param():变量数与准备好的语句中的参数数不匹配

来自分类Dev

call_user_func_array()-警告:mysqli_stmt :: bind_param():变量数与准备好的语句中的参数数不匹配

来自分类Dev

Python MySQL错误1210:执行准备好的语句的参数数量不正确

来自分类Dev

“在准备好的语句中未提供参数数据”

来自分类Dev

即使匹配,准备好的语句也不匹配绑定变量?

来自分类Dev

是否可以计算PDO准备语句中的参数数量?

来自分类Dev

是否可以计算PDO准备语句中的参数数量?

来自分类Dev

错误:mysqli_stmt :: bind_result():绑定变量数与准备好的语句中的字段数不匹配

来自分类Dev

与准备好的变量不匹配

来自分类Dev

准备好的语句在 LIKE 子句中缺少绑定变量

来自分类Dev

在准备好的语句中准备失败

来自分类Dev

mysqli_stmt::bind_param():变量数与第 64 行准备语句中的参数数不匹配

来自分类Dev

准备好的语句中的异常

来自分类Dev

准备好的语句中的异常

来自分类Dev

准备好的语句中的$ row [''] PHP

来自分类Dev

参数数量/类型不匹配

来自分类Dev

准备好的语句不获取数据

来自分类Dev

Cassandra上已准备好的语句的最大数量

来自分类Dev

SQL 中 case 语句中的参数数量无效

来自分类Dev

查询工作正常但在准备好的语句中不工作

来自分类Dev

在准备好的mysqli语句中多次使用一个参数

Related 相关文章

  1. 1

    变量数量与准备好的语句中的参数数量不匹配

  2. 2

    mysqli_stmt :: bind_param():变量数量与准备好的语句中的参数数量不匹配

  3. 3

    MySQL-变量数与准备好的语句中的参数数不匹配

  4. 4

    出现以下错误:变量数与准备好的语句中的参数数不匹配

  5. 5

    mysqli_stmt :: bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

  6. 6

    mysqli_stmt :: bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

  7. 7

    mysqli_stmt_bind_result():绑定变量的数量与准备好的语句中的字段数量不匹配

  8. 8

    绑定变量的数量与 php 和 android 中准备好的语句中的字段数量不匹配

  9. 9

    mysqli_stmt :: bind_param():变量数与准备好的语句中的参数数不匹配

  10. 10

    call_user_func_array()-警告:mysqli_stmt :: bind_param():变量数与准备好的语句中的参数数不匹配

  11. 11

    Python MySQL错误1210:执行准备好的语句的参数数量不正确

  12. 12

    “在准备好的语句中未提供参数数据”

  13. 13

    即使匹配,准备好的语句也不匹配绑定变量?

  14. 14

    是否可以计算PDO准备语句中的参数数量?

  15. 15

    是否可以计算PDO准备语句中的参数数量?

  16. 16

    错误:mysqli_stmt :: bind_result():绑定变量数与准备好的语句中的字段数不匹配

  17. 17

    与准备好的变量不匹配

  18. 18

    准备好的语句在 LIKE 子句中缺少绑定变量

  19. 19

    在准备好的语句中准备失败

  20. 20

    mysqli_stmt::bind_param():变量数与第 64 行准备语句中的参数数不匹配

  21. 21

    准备好的语句中的异常

  22. 22

    准备好的语句中的异常

  23. 23

    准备好的语句中的$ row [''] PHP

  24. 24

    参数数量/类型不匹配

  25. 25

    准备好的语句不获取数据

  26. 26

    Cassandra上已准备好的语句的最大数量

  27. 27

    SQL 中 case 语句中的参数数量无效

  28. 28

    查询工作正常但在准备好的语句中不工作

  29. 29

    在准备好的mysqli语句中多次使用一个参数

热门标签

归档