NYCPHP Meetup

NYPHP.org

[nycphp-talk] I'm stupid...

Hans Zaunere zaunere at yahoo.com
Wed May 21 14:58:45 EDT 2003


--- "Joshua S. Freeman" <jfreeman at amnh.org> wrote:
> I've made a conceptual breakthrough (duh!) with regards to this project I'm
> working on to really get to a meaningful skill level with MySQL/PHP
> development.  But.. for some reason, I'm really stuck on this one point:
> 
> I have a database called 'wasps'.  The database has 19 tables so far most
> of
> which are 'lookup' tables (is that the right term?)...
> 
> The main table in the database is called 'specimens'.  Each 'specimen' has
> a
> taxonomy (order, family, genus, subgenus, species, subspecies).
> 
> For each part of the taxonomy I have a separate table.
> 
> Ideally, when someone loads the survey form to begin building a new record
> in the 'specimens' table, I want to query those taxonomy tables (order,
> family, genus, etc...) so that I can build
> <select><option></option></select> menus based on the rows inside each
> taxonomic table...
> 
> I want to do this using 'foreach'...
> 
> I've tried a few different things but I can't get it to work:
> 
> mysql_connect($host, $user, $password)
>     or die("Could not connect to database");
> mysql_select_db($database)
>     or die ("Could not select $database database");
> 
> print "The current database is $database";
> 
> $query= mysql_query("select * FROM order");

I think you want to return to $result here, since it's used below.
> 
> $result = $query;
>         print ("<select name=\\"order\\">");
>         foreach ($result as $key=>$val)

$result is not an array - it's a resource handle pointing to a chunk of
memory that contains MySQL's data.  You'd probably want something like:

for( $rows = array(),$i = 0,$rowcnt = mysql_num_rows($result); $i < $rowcnt;
++$i ) {
   $rows[] = mysql_fetch_assoc($result);
}


foreach( $rows as $rownum => $row ) {
   foreach( $row as $colname => $colvalue ) {
      echo "<br><br>$rownum => $colname => $colvalue";
   }
}


... for example.


H


>         print "<option value=\\"1\\>$val</option>";
>         print ("</select>");
>         }
> 
> ?>
> 
> but this does not work.. i know I'm close.. and I just spent 2 hours at
> barnes & nobles at a table in the cafe with a bunch of PHP books (couldn't
> find that WROX book someone suggested earlier)  trying to make this work on
> just the order table because that table only has one record in it...  but I
> could not make it work.. if I can figure out how to make this, I'll be able
> to make considerable progress on this thing..
> 
> Someone please help me over this hump!
> 
> Thanks!
> 
> J.
> 
> 
> 
> --- Unsubscribe at http://nyphp.org/list/ ---
> 
> 




More information about the talk mailing list