Re: Word Activity Application
| From: | Ron Piggott | Date: | Mon, 03 Jan 2011 01:56:58 +0000 |
| Subject: | Re: Word Activity Application | ||
| Groups: | php.db | ||
| Request: | Send a blank email to php-db+get-47594@lists.php.net to get a copy of this message | ||
The FOREACH below is giving me the error:
Invalid argument supplied for foreach()
Does anyone understand what I have done to cause this error?
#query for words
$query = "
SELECT
reference , word , explanation
FROM Bible_dictionary
WHERE live =1
ORDER BY RAND( )
LIMIT 5
";
$words_match_up_result=mysql_query($query);
$records_found=mysql_numrows($words_match_up_result);
echo $records_found . "<br>"; # output is 5
#create array from mySQL query
$words = array();
$explanations = array();
$i=1;
while ( $i <= $records_found ) {
$words[$i] = stripslashes( mysql_result($words_match_up_result,($i -1),"word") );
$explanations[$i] = stripslashes( mysql_result($words_match_up_result,($i
-1),"explanation") );
++$i;
}
#shuffle arrays
$match_words = shuffle ( $words );
$match_explanations = shuffle ( $explanations );
#display words on the screen
foreach($match_words as $word) {
echo $word . "<br />\r\n";
}
The Verse of the Day
“Encouragement from God’s Word”
http://www.TheVerseOfTheDay.info
From: Ron Piggott
Sent: Sunday, January 02, 2011 5:54 PM
To: php-db@lists.php.net
Subject: Word Activity Application
I am working on a word activity --- matching words and their definitions.
I want to display 5 words on the left hand side and the 5 definitions on the right hand side. But I
want the definitions displayed in a different order than the words so the user submits their answer.
Should I use PHP to display the definitions in random order? OR Is there a way do this in mySQL
that would mix and match results from different rows? This is the query gives me the 5 results
SELECT reference , word , explanation
FROM Bible_dictionary
WHERE live =1
ORDER BY RAND( )
LIMIT 5
Ron
The Verse of the Day
“Encouragement from God’s Word”
http://www.TheVerseOfTheDay.info