- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 MySQL 数据库,但我的功能无法正常工作。我想知道我的数据库查询得到了多少结果,但我什么也没得到,甚至没有 0。我也尝试过 $values->num_rows;
相同的结果。不要回电话号码...什么都没有
我的代码:
$values = $database->query("SELECT * FROM `wp_all_import_xml` WHERE name = '$title' AND price = '$price' AND shop = '$shop' AND link = '$link'");
$count_values = mysqli_num_rows($values);
echo "ERROR by detecting Product (More than 1 Row return by SQL!): " .$title. " Preis: " .$price. " Shop: " .$shop. " Link: " .$link. "\t num_rows: " .$count_values. "\n";
如何获取返回的行数?
问候
最佳答案
mysqli_num_rows 函数确实有效。
对观察到的行为最可能的解释是发生了错误并被忽略。
要对此进行调试,请首先确保启用错误报告。
修改代码以检查查询的返回结果。通过执行条件测试来验证它没有返回 FALSE。
if ($values = $mysqli->query(...) ) {
// query returned a resultset
} else {
// query returned FALSE
}
如果我们需要检索的只是行数,那么我们可以在 SELECT 列表中使用 COUNT(*)。
if ( $res = $mysqli->query("SELECT COUNT(*) AS cnt FROM ... ") ) {
如果查询成功,即使计数为零,我们也会返回一行。我们可以像处理其他查询的结果一样轻松地处理结果,而无需使用 num_rows
进行处理。 ,并担心查询是缓冲的还是非缓冲的等等。
我们假设 $database
是 mysqli 连接,而不是 PDO 连接,因为代码包含对 mysqli_num_rows
的调用功能。如果是 PDO 连接,则“num_rows 不起作用”。
问题中的代码遵循易受 SQL 注入(inject)攻击的代码中常见的模式。 (在这段摘录中,我们无法确定 SQL 文本中包含的变量值是否可能不安全,因此我们无法判断它是否容易受到攻击。)
如果这是一个带有绑定(bind)占位符的准备好的语句,那么我们就可以知道。
使用带有绑定(bind)占位符的准备好的语句。这并不难。
关于mysql - num_rows 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42307391/
我正在使用 CodeIgniter,我想从数据库中的表中获取一些数据。 在我的模型中,我有这个功能: public function fetch_cours($limit, $start, $elem
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
这是我在模型中的代码.. function get_info($product_id) { $this->db->from('product'); $this->db->where('
使用“登录”、“注册选项”进行项目,但在登录个人资料时遇到问题。 在电子邮件、密码字段中输入正确的数据后,它不会回显成功文本,而是回显错误的用户名或密码。 据我所知,if($st->num_rows(
出现一个奇怪的错误,指出我在运行 mysqli_num_rows 查询时未连接到数据库。这是代码: exampleClassFunction() 使用对象运算符->。 要获取num_rows
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 要求提供代码的问题必须表现出对所解决问题的最低限度的了解。包括尝试的解决方案、为什么它们不起作用以及预期结果
这个问题已经有答案了: When to use single quotes, double quotes, and backticks in MySQL (13 个回答) 已关闭 7 年前。 我有一些
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
这个问题已经有答案了: What to do with mysqli problems? Errors like mysqli_fetch_array(): Argument #1 must be o
我有一个简单的函数来检查用户是否已经在我的网站上注册。如果是,则不会添加它们,如果不是,则添加它们。然而,在我的数据库中,由于某些奇怪的原因,某个用户使用完全相同的 id 被添加了多次。 mysqli
我真的厌倦了这个 num_rows 属性。首先,我在没有 store_result() 的情况下使用它,但它无法正常工作。然后我发现我应该将结果存储在本地以便找出记录数。有效。现在它再次停止工作。 当
*实际问题比帖子标题复杂得多:S 假设我有一张 table ID | vote_id | vote_type | vote_user 1 ---- 2 ----- up -------
每当我需要数据库中的东西时,比方说当用户登录时,我需要验证并获取用户数据,我会这样做: 检查用户是否存在 num_rows 使用fetch_array获取用户数据 所以我的问题如下: 我在想,难道没有
我是 php 和 mysql 的初学者。 num_rows 在下面的 basic 示例中不起作用。整个脚本的灵感来自 w3schools 中的示例。 w3schools example . 浏览器显示
我需要帮助,我有 n 个数据,这些数据由 ajax 请求返回给客户端。我需要从其他应用程序调用 api 的每一行数据。现在我正在使用 callback为此,是的,api 是成功的,并且按照我的预期提供
我正在使用 mysqli 类和准备好的语句在 PHP 中编写一个数据库处理程序类。我试图打印出结果。它并没有立即起作用,所以我决定进行一些调试。我尝试使用 mysqli_statement 类中的 n
db->get('av_home'); echo $this->db->num_rows(); } } 以上代码报错, Call to undefine
模型文件中的函数: function get_user_by_email($email) { //$this->consumer->where('email=', strtolower($em
我试图获得我编写的足球得分模型的总冠军。 我在使用sql进行查询和从最后10个条目进行计数时遇到了困难。 $sql = "SELECT * FROM fixtures WHERE AwayTeam =
好的,所以我遇到了这个奇怪的问题。我的 num_rows 不起作用,我尝试了一切。 所以这个想法是,如果数据库中没有选定的行,它应该显示 。但事实并非如此。 我没有错误消息,所以我不知道我能做什么。
我是一名优秀的程序员,十分优秀!