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

How to get all values from resultset?

我试图从 table 中获取所有值,然后将它们分配给一个变量,table 中只有 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; 

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

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

如果没有尝试查看数组中的内容:

print_r($rs2);

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

Fetch a result row as an associative, a numeric array, or both

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

要访问第二行,我推荐一个循环。

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.