Page 1 of 1

Extracting From mysql_fetch_array($result)

Posted: Sat Sep 05, 2009 9:34 pm
by zunebuggy

Code: Select all

 
$sql="SELECT key_field, field1, field2, field3 FROM mytable WHERE random = 1 ORDER BY RAND() LIMIT 8";
$result = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_array($result);
 
How is the array stored in $row and how can I extract the field values from these 8 random records? I did a var_dump ($row); and I don't get it.

I want to store each field like:

$key_fld1 = returned record 1 key_field
$key_fld2 = returned record 2 key_field...
etc...
$key_fld8 = returned record 8 key_field

$fld_1 = returned record 1 field1
$fld_2 = returned record 2 field1...
etc...

Also, with the query above, are these 8 unique or is it possible that it will result in duplicate records?

If it can repeat, I need to find out how to make it pick 8 unique records.

Thank you.

Re: Extracting From mysql_fetch_array($result)

Posted: Sun Sep 06, 2009 2:40 pm
by Darhazer

Code: Select all

$sql="SELECT key_field, field1, field2, field3 FROM mytable WHERE random = 1 ORDER BY RAND() LIMIT 8";
$result = mysql_query($sql) or die(mysql_error());
$fields = array();
for ($i=0; $i<mysql_num_rows($result); $i++){
 $row = mysql_fetch_array($result);
 $fields[] = $row;
}
// key field from first record:
echo $fields[0]['key_field'];
// field1 from first record
echo $fields[0]['field1'];
// key field from second record:
echo $fields[1]['key_field'];
// field1 from second record
echo $fields[1]['field1'];
Any questions?