gpt4 book ai didi

php - MYSQLI bind_param 与 Strato

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

我的问题是,在准备查询然后绑定(bind)参数时,我的 MYSQLI 查询出现了非常奇怪的行为。

define("HOST", "rdbms.strato.de");          // Der Host mit dem du dich verbinden willst.
define("USER", "USER"); // Der Datenbank-Benutzername.
define("PASSWORD", "PASSWORD"); // Das Datenbank-Passwort.
define("DATABASE", "DATABASE"); // Der Datenbankname.

// Create connection to Database
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
mysqli_set_charset ($mysqli,"utf8");
if(mysqli_connect_errno()){
echo "Verbindung fehlgeschlagen: ".mysqli_connect_error();
}
else {
echo "success";
}

连接运行没有任何问题。

if ($select_stmt = $mysqli->prepare("SELECT name FROM accounts WHERE id = 1")) {
$select_stmt->execute();
$select_stmt->store_result();
$select_stmt->bind_result($name);
$select_stmt->fetch();
}
else {
echo $mysqli->error();
}
echo "Name: " . $name;

选择aacount数据库的名称也运行,直接在sql查询中绑定(bind)id没有问题。

问题出现在将 id 与 $select_stmt->bind_param() 绑定(bind)时

if ($select_stmt = $mysqli->prepare("SELECT name FROM accounts WHERE id = ?")) {
$select_stmt->bind_param('s', '1');
$select_stmt->execute();
$select_stmt->store_result();
$select_stmt->bind_result($name);
$select_stmt->fetch();
}
else {
echo $mysqli->error();
}
echo "Name: " . $name;

该行为类似于无限循环中的行为。但是echo "Name: " . $name;根本不显示。 echo $mysqli->error();也是如此。

最佳答案

我发现你只能在bind_param()处使用变量进行绑定(bind)。

喜欢:

$id= '1';
$select_stmt->bind_param('s',$id);

关于php - MYSQLI bind_param 与 Strato,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28406332/

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