0
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);
3
  • i'm getting only value in last array Commented Sep 9, 2012 at 9:24
  • print_r is outside the while loop Commented Sep 9, 2012 at 9:31
  • 1
    use PDO instead, mysql_* is being deprecated Commented Sep 9, 2012 at 9:34

1 Answer 1

2

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;
}
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.