如何从结果集中获取所有值?

时间:2017-06-04 20:51:48

标签: php arrays mysqli resultset

我正在尝试从表中获取所有值,然后将它们分配给变量,表中只有2个选项,因此它可以有1或2个值,但是在尝试时它只会在第一次返回时返回数字(1)和第二个($fila2 = $rs2[1];)它表示这是一个未定义的偏移量

include('conexion.php');
$str_query2 = "SELECT gc_id FROM prod_grupocompl where pr_id='171' "; //  Variable que guarda la consulta a efectuar
$query2 = mysqli_query($conexion,$str_query2) or die (mysql_error()); // EjecuciÛn de la consulta y se guarda el resultado en $query
$rs2 = mysqli_fetch_array($query2);
$fila = $rs2[0];
$fila2 = $rs2[1];
echo $fila;
echo $fila2; 

2 个答案:

答案 0 :(得分:0)

不确定,但你可以试试这个:

$rs2 = mysqli_fetch_array($query2, MYSQLI_NUM);
$fila = $rs2[0];
$fila2 = $rs2[1];

如果没有尝试用以下内容查看数组内部的内容:

print_r($rs2);

更新:但正如@Devon所说:Source

  

将结果作为关联,数字数组或两者获取

答案 1 :(得分:0)

结果集将返回两行而不是一行中的两个字段。

要访问第二行,我建议循环。

while($row=mysqli_fetch_array($query2, MYSQLI_NUM)){
    // now you can access the field value like this for each row...
    $fila=$row[0];  // do what you want with each value, echo or something.
}

P.S。 mysql_error()缺少i