gpt4 book ai didi

php - mysqli_stmt_bind_param 导致 fatal error : memory size exhausted

转载 作者:可可西里 更新时间:2023-11-01 06:47:55 27 4
gpt4 key购买 nike

认为这是一个非常简单的查询:

$qry="SELECT taglink, tagtitle, tagshow FROM taglist_main WHERE tag = ?";
if ($stmt = mysqli_prepare($link,$qry)) {
mysqli_stmt_bind_param($stmt,"s",$qstring);
mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($stmt,$taglink,$tagtitle,$tagshow);
mysqli_stmt_store_result($stmt);
echo "<p><strong>".mysqli_stmt_num_rows($stmt)."</strong> entries found, shown below.</p>";
while (mysqli_stmt_fetch($stmt)) {
echo "<li><a href=\"/$taguri\" title=\"$tagtitle\">$tagshow</a></li>";
}
mysqli_stmt_close($stmt);

然而,php 似乎不这么认为。运行查询时,出现以下错误:

Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 4294967296 bytes) in /home/envoyenv/public_html/envoytest/tags/index.php on line 110

当使用 mysql_stmt_bind_param 行时。如果我离开该行并调整 SELECT 语句以直接使用字符串变量 $qstring,我不会在屏幕上显示任何结果(实际上,我得到 NOTHING 显示在屏幕上,甚至没有 echo!)

这不是一个特别大的表(少于 300 行),这个查询应该返回 10 行左右(SELECT 语句在 phpmyadmin 中工作正常,返回预期结果)

我做错了什么?


编辑:

我已经检查过以确保 $qstring 实际上是一个字符串:这是 var_dump 的结果:string(14) "riskassessment"

最佳答案

在@andrewsi 的帮助下:

交换 mysqli_stmt_bind_result($stmt,$taglink,$tagtitle,$tagshow);mysqli_stmt_store_result($stmt); 行的顺序所以现在的代码片段阅读:

$qry="SELECT taglink, tagtitle, tagshow FROM taglist_main WHERE tag = ?";
if ($stmt = mysqli_prepare($link,$qry)) {
mysqli_stmt_bind_param($stmt,"s",$qstring);
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);
mysqli_stmt_bind_result($stmt,$taglink,$tagtitle,$tagshow);
echo "<p><strong>".mysqli_stmt_num_rows($stmt)."</strong> entries found, shown below.</p>";
while (mysqli_stmt_fetch($stmt)) {
echo "<li><a href=\"/$taguri\" title=\"$tagtitle\">$tagshow</a></li>";
}
mysqli_stmt_close($stmt);

希望这对那些仍然喜欢编写过程代码的人有用。

关于php - mysqli_stmt_bind_param 导致 fatal error : memory size exhausted,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19642009/

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