PHP MySQLi numrows输出1,即使该值高于或低于1
我有一个PHP脚本,它在PHP MySQLi numrows输出1,即使该值高于或低于1,php,sql,mysqli,Php,Sql,Mysqli,我有一个PHP脚本,它在lr列中输出变量: $conx = mysqli_connect("value here", "value here", "value here", "value here"); $sql = "SELECT lr FROM locations"; if (mysqli_connect_errno($conx)){ die("Failed to connect to MySQL: " . mysqli_connect_error()); }
lr
列中输出变量:
$conx = mysqli_connect("value here", "value here", "value here", "value here");
$sql = "SELECT lr FROM locations";
if (mysqli_connect_errno($conx)){
die("Failed to connect to MySQL: " . mysqli_connect_error());
}
$query = mysqli_query($conx, $sql);
$numrows = mysqli_num_rows($query);
if ($numrows > 1) {
echo "No locations found";
} elseif ($numrows == '1') {
echo "1 location found";
} elseif ($numrows > 0) {
echo $numrows." locations found";
}
// Free result set
mysqli_free_result($query);
mysqli_close($conx);
一切似乎都正常,但当它输出结果时,它总是输出1
,即使值高于或低于1
有人有解决方案吗?试试这个,看看它是否适合你的目标:(这是一个非常基本的例子)
预期的输出是什么?例如,
lr
列中的值是2
,但仍然输出1个找到的位置
,这就是mysqli_num_rows()
所做和已经完成的工作。如果列不为空,则输出1找到的位置
。如果您想查看列中的编号2
,那么您需要获取结果。因此,我应该使用mysqli\u fetch\u assoc()
或mysqli\u fetch()
?(获取/通过)回显结果(如果这是目标)是循环查看您的结果,使用foreach
或而@MarcusSchack-Abildskov@MarcusSchack-阿比尔茨科夫太好了,我很高兴听到这个消息,马库斯。干杯,不客气。
$conx = mysqli_connect("value here", "value here", "value here", "value here");
$sql = "SELECT lr FROM locations";
if (mysqli_connect_errno($conx)){
die("Failed to connect to MySQL: " . mysqli_connect_error());
}
$query = mysqli_query($conx, $sql);
while($row=mysqli_fetch_array($query);)
{
echo $row['lr']." ";
}
mysqli_close($conx);