我正在尝试从mysql数据库中的特定表中连续打印所有项目。
这是我得到的输出(这不是我想要的):
**mysqli_result Object ( [current_field] => 0 [field_count] => 3 [lengths] => [num_rows] => 28 [type] => 0 ) Array ( )**
以下是我的表现:
<?php
$connect = mysqli_connect("localhost", "root", "root");
mysqli_select_db($connect, "TrackTool");
$fetch1 = mysqli_query($connect, "SELECT * FROM SalesForceActions");
// set array
$array = array();
// look through query
while($row = mysql_query($fetch1)){
// add each row returned into an array
$array[] = $row;
}
print_r($fetch1);
print_r($array);
mysqli_close($connect);
?>
我做错了什么?
答案 0 :(得分:3)
您需要使用mysqli_fetch_assoc()
(或等效的)获取结果:
$array = array();
while($row = mysqli_fetch_assoc($fetch1)) {
$array[] = $row;
}
print_r($array);
如果您确实想要所有行,请查看mysqli_fetch_all()
:
$array = mysqli_fetch_all($fetch1, MYSQLI_ASSOC);
print_r($array);
答案 1 :(得分:2)
您需要在运行查询后获取结果。所以你执行查询然后循环从那些结果中取出
像这样:
$fetch1 = mysqli_query($connect, "SELECT * FROM SalesForceActions");
$array = array();
while($row = mysqli_fetch_assoc($fetch1)){
$array[] = $row;
}
您还将mysqli_ *函数与mysql_ *函数混合使用。一定不要混合那些。实际上,从现在开始只使用mysqli_ *函数,因为不推荐使用mysql_ *函数。