- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我尝试使用 SELECT 语句查询数据库时,它工作正常,但是当我尝试通过将 LIKE 子句附加到原始查询来过滤返回的行时,它会引发 fatal error :调用未定义的方法 mysqli_stmt::fetch_row( )
if (isset($_POST["search"]))
{
$searchString = "%{$_POST['search']}%";
$queryStringAppend = " WHERE name LIKE ? OR state LIKE ?";
$stmt = $mysqli->prepare("SELECT COUNT(*) FROM $tableName " . $queryStringAppend);
//|| die("Ooops! Error occured: <br/>" . $mysqli->error);
$stmt->bind_param("ss", $searchString, $searchString);
$stmt->execute();
$stmt->store_result();
if ($mysqli->error) // CHECK IF ERROR HANDLER IS WORKING
die("Query failed: <br />" . $mysqli->error);
}
else
{
$stmt = $mysqli->query("SELECT COUNT(*) FROM $tableName ");
if ($mysqli->error)
die("Query failed: <br />" . $mysqli->error);
}
$totalRowCount = $stmt->fetch_row()[0]; // This is the line where the error is thrown
当未设置 $_POST["search"] 时,查询工作正常并显示所有结果。但是,如果我尝试过滤,则会引发错误:-(
最佳答案
这是因为fetch_row是mysqli_result
的方法,而不是mysqli_stmt
您需要先存储您的结果
$results = $stmt->get_result()
$results->fetch_row()[0];
在第二个if
中,mysqli->query("")
直接返回一个mysqli_result
对象,所以执行没有错误;
关于php - 为什么搜索会抛出对未定义错误方法 stmt::fetch_row() 的调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54411953/
我无法确定以下 ruby 内联救援代码有什么问题 def test_check() p "first st" t = 5 * lsdj rescue return false p "second
在完成准备好的 mysqli$stmt->close() 和 $stmt->free_result() 之间的区别强>声明。 到目前为止我使用: $mysqli = new mysqli(host,u
我正在尝试登录,输入用户名和密码,如果未显示“同意元素”或显示“管理标题元素”,则编写一个条件,然后单击管理元素,但我的代码仅检查我同意元素不存在显示并抛出异常。 driver.get("ente
根据 php 手册,您可以通过询问 $stmt->error 和 $stmt->errno 来检索任何准备好的语句方法中的错误,但是 bind_param 方法似乎从来没有将这些设置为错误,其他人可以
你能帮我编写高效的 Java 代码吗? 逻辑是:我必须读取文件中的第一个有效记录并生成文件名。无效/有效记录由该行的前 2 个字符标识。无效记录的前 2 个字符填充在名为ignoreTrans 的 A
我试图从下面的代码中获取结果,但是没有返回任何结果。 $stmt->execute(array(id)) 未按预期运行。它似乎在其他代码段中工作正常,我已经比较了它们,没有发现任何差异。 $stmt
我正在尝试检查从 cookie 中检索到的 id 是否存在于数据库中,但是这部分代码 $stmt->bind_result($id, $uname); 和 $username = $uname; 按照
我已经准备好阅读所有其他主题,但没有找到解决方案。这是我的代码 $DevolverUser = $_SESSION['DevolverUser']; $DevolverPas
我正在尝试准备一个mysqli查询,但是它在没有给出任何错误的情况下以静默方式失败。 $db_hostname = "test.com"; $db_database = "dbname";
我想知道 1.java中语句关闭的目的 2.如果我没有在程序中提供 stmt.close() 会发生什么 try{ Statement DelQTY=OPConnect.crea
需要帮助来完成这个简单的任务。该 sp 应该提供一个结果集,并将从 MS-Access-Database 报告目的中调用。 表名可变,但以数字 (lsid) 结尾。使用串联。max_prepared_
我有一个带有 echo 的 php 代码来检查它停止的位置(它不会崩溃,但会停止发送 echo 并且不能按预期工作) $stmt=$conexion->prepare("SELECT Email, M
我不明白我做错了什么。 我在 SQL Server 中有一个存储过程,我需要迁移到 MySQL。 当我运行与打印相同的查询时,该查询正在工作,但相同的变量无法生成准备语句,从而导致语法错误。 Erro
我正在我的事件网站上创建搜索过滤器。有 3 个下拉输入:位置、事件类型、日期。 当用户提交搜索过滤器时,表单会发布更改 mysql 查询的值,这将在用户屏幕上显示不同的事件。我无法找到灵活的解决方案。
我如何mysqli::stmt->bind_param在mysql中被视为NULL的东西? 我目前正在使用 $stmt->bind_param('s', 'NULL'); 最佳答案 bind_para
我在此处运行准备 stmt 时遇到语法错误。我尝试手动执行 @c 中的查询并且它有效。不知道为什么 stmt 会给出这个错误。这是我正在使用的代码。 SET @i=24; SET @Bill_mont
当 ($stmt->fetch()) 服务器不会读取过去 if (isset($_POST['join'])) { $selectedgame = $_POST['join']; $stmt = $l
我的代码: $stmt = $user_home->runQuery("SELECT * FROM tbl_users, tbl_products WHERE userID=:uid and crea
我不明白为什么我的函数没有得到结果而只是得到空值。我正在使用 PhpStorm;我的所有连接都很好(Apache、MySQL、PhpMyAdmin),我已经检查过它们,其他其他服务也正常工作。 这是我
这个问题在这里已经有了答案: Why does mysqli num_rows always return 0? (1 个回答) 关闭 6 年前。 我想检查 if ($numRows >= 1) 那
我是一名优秀的程序员,十分优秀!