gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-29 21:29:58 24 4
gpt4 key购买 nike

我没有发现我的代码有任何问题,但我的代码中仍然出现此错误,这根本没有意义。

Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement in line 131

这是我的完整代码:

    if($stmt = $db_conx->prepare("SELECT id, product_name FROM yt ORDER by id") ) {
//die( $db_conx->error );

$product_list = "";
$stmt->bind_param("is", $id, $product_name);
if ( ! $stmt->execute() ) {
die( $stmt->error );
}
$stmt->bind_result($id, $product_name);
$stmt->store_result();

while($stmt->fetch()) {
$value[] = array('id'=>$id, 'product_name'=>$product_name);
$product_list .= "<li class='mix ".$product_name."' data-name='".$product_name."'><a href='../product_images/" . $id . "Image1.jpg'>
<img src='../product_images/" . $id . "Image1.jpg'></a>
<h4>".$product_name."</h4>
<br>

</li>
<div style='width:120px;'><a href='edit.php?edit=$id'>Edit this product</a></div>
<br>
<div style='width:120px;'><a href='products.php?delete=$id'>Delete this product</a></div>";

$files = glob('../cache/*'); // get all file names
foreach($files as $file){ // iterate files
if(is_file($file))
unlink($file); // delete file
}
}
}
mysqli_stmt_close($stmt);

这就是 131 路线路:

$stmt->bind_param("is", $id, $product_name);

我有什么遗漏的吗?

最佳答案

您尝试将 2 个参数绑定(bind)到没有任何参数的查询:

$stmt = $db_conx->prepare("SELECT id, product_name FROM yt ORDER by id");
$stmt->bind_param("is", $id, $product_name);

只有在为参数定义占位符时才能绑定(bind)参数,如下所示:

$stmt = $db_conx->prepare("SELECT id, product_name FROM where id = ? or  product_name = ?");
$stmt->bind_param("is", $id, $product_name);

? 表示可以将参数绑定(bind)到的占位符。

关于php - 变量数量与准备语句中的参数数量不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35337840/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com