Hello everyone,
I'm having difficulty solving this code problem. I can load a popup list of
states from a "states" table, but I can't seem to get-it-right when I execute a
SHOW, rather than a SELECT query. Actually, I want to create a popup list of
all DATABASES through the CGI. From the command line, this works:
mysql> SHOW DATABASES;
+-----------+
| Database |
+-----------+
| cookbook |
| test |
+-----------+
2 rows in set (0.00 sec)
As you can see, there are two databases on my server, "cookbook" and "test". I
prepare the query request, and execute it without any error complaints. The
while/fetchrow_array returns only one iteration or row, . . .apparently the
last row which contains the "test" database, and ultimately my popup list only
contains the "test" database row. I'm not getting any error from the
fetchrow_array function; however I only see one diagnostic display of "GOT
HERE! db_name=test". Apparently, the while loop has only looped one time.
Regarding the following code, why is "cookbook" missed?
$sth=$dbh->prepare("SHOW DATABASES;");
$sth->execute( );
DBI_error("Query execution to SHOW DATABASES failed.","7");
while($db_name = $sth->fetchrow_array( ))
{
DBI_error("Fetchrow_array failed.","7"); # Test/no exit-on-error.
push(@db_name_values, $db_name); # Save each value in array.
DBI_error("GOT HERE! db_name=$db_name<br>","1"); #### TEMP!
# When used with option "1", ----^
# this always prints a diagnostic
"trace" message.
}
print # Start of print block
$cgi-> popup_menu
(
-name=>'db_name',
-values=>[EMAIL PROTECTED]
),
Thanks and OTTF,
Ron Wingfield
FreeBSD 4.8 -- Apache http 2.0.28 -- MySQL client/server 4.1.7
Perl 5.8.5 -- p5-DBD-mysql-2.9004 driver -- p5-DBI-1.46
--------------------------------------------------------------------------------