Amazing things happen when you compare values of different types. The
numerical value of "Name" is zero. Try using === to compare type as well
as value.
miguel
On Tue, 23 Apr 2002, John S. Huggins wrote:
> I forgot to show you some output from this thing...
>
> ---{0,BLOW, JOE}---Name is BLOW, JOE, Key = 0 |
> ---{Name,BLOW, JOE}---Name is BLOW, JOE, Key = Name |
> ---{1,YES}---1 |
> ---{2,}---
> ---{3,YES}---3 |
>
> The way I see it, that first line should have not printed because $key is
> equal to 0 not "Name".
>
>
> On Tue, 23 Apr 2002, John S. Huggins wrote:
>
> >-
> >-I have a problem.
> >-
> >-I am fetching rows from a MySQL table called "temp." Each row has four
> >-fields: "Name", "1", "2" and "3"
> >-
> >-Then I do this function which will eventually generate records for a
> >-lookup table for any skills in the 1, 2 or 3 fields that equal the string
> >-"YES" associated with the Name (right now it just prints to the web
> >-browser while I debug it).
> >-
> >-function generateLookupTable() {
> >- //
> >- $query = "SELECT * FROM temp";
> >- if ( !$result = mysql_query($query) ) {
> >- //
> >- print("<p>mysql_error() . "<br>$query</p>");
> >- } else {
> >- //
> >- // For each name returned, march through
> >- // each skill and insert a row into the
> >- // lookup_skill
> >- // where the skill value == "YES"
> >- while ( $row = mysql_fetch_array($result) ) {
> >- //
> >- print("<p>"); // For test
> >- while ( list($key,$value) = each($row) ) {
> >- print("---\{$key,$value}---"); // For test
> >- //
> >- if ( $key == "Name" ) { <<<<<<<<-----
> >- print("Name is $value, Key = $key
> >-| ");
> >- } else {
> >- if ( $value == "YES" ) {
> >- print("$key | ");
> >- }
> >- }
> >- print("<br>");
> >- }
> >- print("</p>"); // For test
> >- }
> >- }
> >-}
> >-
> >-
> >-
> >-I have marked an IF statement with the "<<<<<<<-----" string. As the
> >-while statement marches through the array $row returned from
> >-mysql_fetch_array the value of key is set first to "0" then "Name" then
> >-"1" then "2" then "3". Fine. However, the if statement highlighted above
> >-winds up being "true" when the $key == 0 and when $key == "Name" and I
> >-can't see why this would be so.
> >-
> >-Any possibilities folks? I am quickly working around this now so it is
> >-not slowing me down, however, this is just too unusual to not figure out.
> >-
> >-John
> >-
> >-
> >-**************************************
> >-
> >-John Huggins
> >-VANet
> >-
> >[EMAIL PROTECTED]
> >-http://www.va.net/
> >-
> >-**************************************
> >-
> >-
> >-
> >---
> >-PHP General Mailing List (http://www.php.net/)
> >-To unsubscribe, visit: http://www.php.net/unsub.php
> >-
>
> **************************************
>
> John Huggins
> VANet
>
> [EMAIL PROTECTED]
> http://www.va.net/
>
> **************************************
>
>
>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php