user1657890
user1657890

Reputation: 1

php How to grab MySQL data into a multidimensional array

mysql_select_db($my_db, $con);
$result = mysql_query("SELECT * FROM word_test");
$i=1;

while($row = mysql_fetch_array($result))
{

  $a = array(
    $i => array(
      0 => $row['question'],
      1 => $row['op_1'],
      2 => $row['op_2'],
      3 => $row['op_3'],
      4 => $row['op_4'],
      6 => $row['ans']
    ),
  );
  $i=$i+1;

}//while loop ended     
print_r($a);

Upvotes: 0

Views: 76

Answers (1)

McGarnagle
McGarnagle

Reputation: 102733

You're overwriting the array in $a with each iteration of the loop. Pull the definition of $a outside the loop, and use array_push to append each row:

$a = array();
while($row = mysql_fetch_array($result))
{
    $i => array(
        0 => $row['question'],
        1 => $row['op_1'],
        2 => $row['op_2'],
        3 => $row['op_3'],
        4 => $row['op_4'],
        6 => $row['ans']
    );
    array_push($a, $i);
    $i=$i+1;
}

Upvotes: 2

Related Questions