Php SQL语句未返回所有值
我试图从表中提取一个值列表,但无法获取所有值。在MySQL中运行以下命令将返回一个包含3个建筑物的列表(a楼、a楼、B楼)以及此查询:Php SQL语句未返回所有值,php,mysql,sql,Php,Mysql,Sql,我试图从表中提取一个值列表,但无法获取所有值。在MySQL中运行以下命令将返回一个包含3个建筑物的列表(a楼、a楼、B楼)以及此查询:从cms\u可用性中选择建筑物。然而,我无法在我的页面上获得相同的结果 $sql = "SELECT building FROM cms_availabilities"; $result = $database->query($sql); $availabilities[] = $database->fetch_array($result); var_
从cms\u可用性中选择建筑物
。然而,我无法在我的页面上获得相同的结果
$sql = "SELECT building FROM cms_availabilities";
$result = $database->query($sql);
$availabilities[] = $database->fetch_array($result);
var_export($availabilities);
这将返回:array(0=>array(0=>'Building A','Building'=>'Building A',),),)
我需要得到A楼,A楼,B楼。我也不知道为什么第二个键显示“Building”而不是1楼。关于正在发生的事情,或者如何成功获取我想要的结果,您有什么想法吗?
fetch\u array
将只获取当前行-您需要迭代,依次获取每一行:
while ($row = $database->fetch_array()) {
echo $row['building'];
}
这将返回一个关联数组
但是,mysql.*
命令已被弃用,因此您应该使用:
MySQLi版本:
while( $availabilities = $result->fetch_assoc() )
{
// Your Code here
}
// You should free availabilities after you're done with it.
$availabilities->free();
我将创建如下内容:
<?php
function building (){
$query=@mysqli_query($this->db,"SELECT building FROM cms_availabilities");
while ($row = @mysqli_fetch_object($query)){
$building=stripslashes($row->building);
$show_building = array('building'=>$building);
}
return $this->building=$show_building;
}
您需要遍历结果集以获取所有值。您当前的代码将仅放置数组中的第一行。可能还有和其他几行的重复。
<?php
function building (){
$query=@mysqli_query($this->db,"SELECT building FROM cms_availabilities");
while ($row = @mysqli_fetch_object($query)){
$building=stripslashes($row->building);
$show_building = array('building'=>$building);
}
return $this->building=$show_building;
}