![](/img/trans.png)
[英]I am trying to fetch data from db in CodeIgniter but getting errors
[英]Why am getting error trying to fetch data on from this code?
它说它的行有一个错误,例如mysqli_num_rows()
期望参数1为mysqli_result
,它指向这一行$resultCheck = mysqli_num_rows($result);
我的代码是:
<?php
$sql = "SELECT FROM videos ORDER BY video_id ASC LIMIT 2,1;";
$result = mysqli_query($con, $sql);
$resultCheck = mysqli_num_rows($result);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) { ?>
<li class="jp-playlist-current"><div><a href="javascript:;" class="jp-
playlist-item-remove" style="display: none;">×</a><a href="javascript:;"
class="jp-playlist-item jp-playlist-current" tabindex="0">1. <?php echo
$row['video_name']; ?> <span class="jp-artist">by <?php echo
$row['video_artist']; ?></span></a></div></li>
<?php }
} else {
echo "there are no songs!";
}
?>
mysqli_num_rows()函数需要一个mysqli_result对象作为其参数。
如果查询中有任何错误并且没有返回mysqli_result对象,则失败。 如果存在语法错误或查询中使用了错误的表名-字段名,则查询可能会失败,并且重要的一点是数据库连接处于活动状态。
您需要全部检查。
如果数据库连接正常,已完成并且之前已检查过,则您不需要以下代码:
<?php
$con = mysqli_connect("{DB_HOST}", "{db_user}","{db_password}","{db_name}");
if (mysqli_connect_errno()) die("DB Connect Error: " . mysqli_connect_error());
?>
然后,在尝试从查询中获取结果之前,请检查查询是否也成功(如果查询失败,mysqli_query()函数将返回false)。
<?php
$result = mysqli_query($con, "SELECT * FROM videos ORDER BY video_id ASC LIMIT 2,1");
if (!$result) die('Error on the query...');
$resultCheck = mysqli_num_rows($result);
if ($resultCheck) {
while ($row = mysqli_fetch_assoc($result)) { ?>
...<?php echo $row['video_name']; ?>...
...<?php echo $row['video_artist']; ?>...
<?php }
} else {
echo "there are no songs!";
}
?>
更换:
$sql = "SELECT FROM videos ORDER BY video_id ASC LIMIT 2,1;"; // ';' in the end is wrong
与:
$sql = "SELECT * FROM videos ORDER BY video_id ASC LIMIT 2,1";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.