mysql准备_MySQL准备语句-选择

bd96500e110b49cbb3cd949968f18be7.png

Who can give me an advice? why the query can't to provide me an expected value? Thanks.

$mysqli = new mysqli($GLOBALS["mysql_host"], $GLOBALS["mysql_user"], $GLOBALS["mysql_passwd"], $GLOBALS["mysql_database"]);

$stmt = $mysqli->prepare("SELECT one FROM table ORDER BY date DESC LIMIT 1");

$last = $stmt->bind_result($one);

$stmt->execute();

$stmt->close();

$mysqli->close();

Echo $last; //it should be "abc"

解决方案

I think you have to execute and then call fetch on mysql_stmt-objects.

Because you may get multiple results (rows).

With fetch you will advance your result-Cursor.

$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

if (mysqli_connect_errno()) {

printf("Connect failed: %s\n", mysqli_connect_error());

exit();

}

/* prepare statement */

if ($stmt = $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {

$stmt->execute();

/* bind variables to prepared statement */

$stmt->bind_result($col1, $col2);

/* fetch values */

while ($stmt->fetch()) {

printf("%s %s\n", $col1, $col2);

}

/* close statement */

$stmt->close();

}

/* close connection */

$mysqli->close();

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值