gpt4 book ai didi

php - 为什么我的 PHP 为 MySQL 准备的语句不起作用?

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

我目前正在学习 PHP 和 MySQL。我刚刚编写了一个处理所有 MySQL 流量的类,但我遇到了一些错误。

function table_exists($tablename){
// check if table exists
$stmt = $this->db->prepare("SHOW TABLES LIKE '?'");
$stmt->bind_param("s", $tablename); //This is line 24.
$stmt->execute();
$ar = $stmt->affected_rows;
$stmt->close();
if ($ar > 0){
return true;
} else {
return false;
}
}

这是有问题的代码,我得到的错误是

Generates Warning: mysqli_stmt::bind_param() [mysqli-stmt.bind-param]: Number of variables doesn't match number of parameters in prepared statement in C:\xampp\htdocs\mail\datahandler.php on line 24

想法?

谢谢

最佳答案

使用准备好的语句时无需使用引号。

$stmt = $this->db->prepare("SHOW TABLES LIKE ?");

此外,您可能想要使用 information_schema View ,而不是 SHOW TABLES,这会给您更多的灵 active 。

关于php - 为什么我的 PHP 为 MySQL 准备的语句不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3908334/

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