Extracting From mysql_fetch_array($result)

Questions about the MySQL, PostgreSQL, and most other databases, as well as using it with PHP can be asked here.

Moderator: General Moderators

Post Reply
zunebuggy
Forum Commoner
Posts: 41
Joined: Wed Aug 27, 2008 1:22 pm

Extracting From mysql_fetch_array($result)

Post 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.
User avatar
Darhazer
DevNet Resident
Posts: 1011
Joined: Thu May 14, 2009 3:00 pm
Location: HellCity, Bulgaria

Re: Extracting From mysql_fetch_array($result)

Post 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?
Post Reply