hmm, interesting to know the mysql_fetch_array() by default returns an array
that's associative AND numeric - very useful to know & something i'll have
to look into more, thanks Jason.

Thanks also John, puting curley braces around the variables is a valuable
lesson - works wonderfully - cheers.

i do have one more problem though, i need to run the loop a 2nd time later
in the page in exactly the same way, but nothing is returned.
i just copied & pasted the code from one section of the page to the next.
do i need to reset one of the vaiables? 

<select name="dept">
  while($row = mysql_fetch_array($result_dept)){
    echo "<option value=\"{$row['dept']}\">{$row['dept']}</option>\n";

cheers, Gav

-----Original Message-----
From: John W. Holmes [mailto:[EMAIL PROTECTED]]
Sent: Friday, 29 November 2002 2:59 AM
To: 'Gavin Amm'; 'Php-Db (E-mail)'
Subject: RE: [PHP-DB] foreach loop from MySQL select query to HTML
select list

> i've looked around the web a bit more & it would appear you can't just
> a
> foreach function, apparently you need to use a while{foreach{}}
> i
> was hoping you could just use the foreach function?
> so this is the code now:
> <select name="deptsub_select">
>   <option>-select-</option>
>     <?PHP
>     while ($row = mysql_fetch_array($result_deptsub)){
>       foreach ($row as $value) {
>         echo "<option value=\"$value\">$value</option>\n";

Where did you get the idea to use foreach? Your select statement is only
selecting one column, so $row is only going to have one column in it for
each mysql_fetch_*. 

Use something like this:

while($row = mysql_fetch_array($result_deptsub))
{ echo "<option
value=\"{$row['deptsub']}\">{$row['deptsub']}</option>\n"; }

---John Holmes...

This e-mail and any attachments are intended solely for the named addressee,
are confidential and may contain legally privileged information. 

The copying or distribution of them or of any information they contain, by
anyone other than the addressee, is prohibited. If you received this e-mail
in error, please notify us immediately by return e-mail or telephone +61 2
9413 2944 and destroy the original message. Thank you. 

As Email is subject to viruses we advise that all Emails and any attachments
should be scanned by an up to-date Anti Virus programme automatically by
your system. It is the responsibility of the recipient to ensure that all
Emails and any attachments are cleared of Viruses before opening. KSG can
not accept any responsibility for viruses that maybe contained here in.
Please advise KSG by return Email if you believe any Email sent by our
system may contain a virus. It should be noted that most Anti Virus
programmes can not scan encrypted file attachments (example - documents
saved with a password). Thus extra care should be taken when opening these

Liability limited by the Accountants Scheme, approved under the Professional
Standards Act 1994 (NSW). 

Level 4 
54 Neridah Street                PO Box 1290 
CHATSWOOD   NSW   2067           CHATSWOOD   NSW   2057 

Ph: +61 2 9413 2944              Fax: +61 2 9413 9901

PHP Database Mailing List (
To unsubscribe, visit:

Reply via email to