gpt4 book ai didi

php - bind_param 不工作(在非对象上)mysqli 准备语句

转载 作者:搜寻专家 更新时间:2023-10-30 23:45:18 25 4
gpt4 key购买 nike

到目前为止,我已经在这里阅读了大约 15 篇关于此类问题的帖子,但没有一篇能够帮助我。

我有以下代码:

$stmt3 = $mysqli->prepare("SELECT cc.name, cc.company, cc.email FROM (`case_contacts` cc) WHERE cc.case_id=? AND cc.end_date IS NULL");
if (is_object($stmt3)) {
$stmt3 -> bind_param("i", $case_id);
} else {
die('Connection issue');
}
$stmt3 -> execute();
$stmt3 -> bind_result($name, $company, $email);
while ($stmt3->fetch()) {

当我执行它时提示“连接问题”。然而,就在 $stmt3 之前,我可以非常愉快地转储 var_dump $mysqli

我已经将查询手动输入到 phpmyadmin 和在线查询检查器中,并且都确认它是有效的。

我检查了用户的权限,都没有问题。事实上,我正在将查询从 mysql 重写到 mysqli,并希望使用准备好的语句。所以数据库用户是一样的。我对其他比这更复杂的准备好的陈述没有任何问题,所以我真的对我所缺少的东西感到茫然。

我什至过度使用了语句中的 '`' 引号换行,因为我知道我应该在每个查询中!

任何建议,调试技巧都会很棒。我环顾四周,发现没有提供输出。

最佳答案

mysqli_stmt::prepare ( string $query ) 返回 TRUEFALSE 阅读更多信息:

http://php.net/manual/en/mysqli.prepare.php

你可以使用这个例子:

<?php

$mysqli = mysqli_connect('localhost', 'root', 'admin', 'test');

$case_id = 603;

$sentence = $mysqli->stmt_init();
if($sentence->prepare("SELECT name, company, email FROM case_contacts WHERE case_id = ? AND end_date IS NULL")) {

$sentence->bind_param("i", $case_id);
$sentence->execute();
$sentence->bind_result($name, $company, $email);

while ($sentence->fetch()) {
echo $name . ' - ' . $company . ' - ' . $email;
}
}

关于php - bind_param 不工作(在非对象上)mysqli 准备语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29546269/

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