On Tue, 11 Sep 2001 00:02, Robert Trembath wrote:
> Hello everyone,
>
> Ran into a problem trying to get this to work. I have multiple names in
> a mysql field (DCD_Access) that contains "name1, name2, name3, name4"
> and I want read this information as an array so I can use these values
> to populate a pull-down list using a while or foreach loop. Below is
> the code I used, but I get the values as a single entry no matter what
> I try. This query brings a single result row "name1, name2, name3,
> name4". Here's the code:
>
> $result4 = mysql_query( "SELECT DCD_Access FROM userdb WHERE ID =
> '$user_ID'");
> $DCD = mysql_fetch_array ( $result4 );
>
> print " <td width='6%' valign=top>\n
> <div align='center'>\n
> <select name='LCompare'>\n
> <option value='none'>None</option>\n
> <option value='within'>Within Gel</option>\n";
> foreach ( $DCD as $val )
> {
> print "<option value='$val'>$val</option>\n";
> }
> print " </select></div>\n
> </td>\n";
>
> This returns HTML like:
>
> <td width='6%' valign=top>
> <div align='center'>
> <select name='LCompare'>
> <option value='none'>None</option>
> <option value='within'>Within Gel</option>
> <option value='name1, name2, name3, name4'>name1, name2,
> name3, name4</option>
> <option value='name1, name2, name3, name4'>name1, name2,
> name3, name4</option>
> <option value='name1, name2, name3, name4'>name1, name2,
> name3, name4</option>
> <option value='name1, name2, name3, name4'>name1, name2,
> name3, name4</option>
> </select>
> </div> </td>
>
> What I need is to get:
>
> <td width='6%' valign=top>
> <div align='center'>
> <select name='LCompare'>
> <option value='none'>None</option>
> <option value='within'>Within Gel</option>
> <option value='name1'>name1</option>
> <option value='name2'>name2</option>
> <option value='name3'>name3</option>
> <option value='name4'>name4</option>
> </select>
> </div> </td>
>
> Anyone know how to fix this?
> Robert
It sounds like your database design could do with a bit of rethinking,
but there is a solution to your immediate problem. You need to explode
the contents of the field into an array which contains one name per
element of the array, then loop through the array to produce your SELECT
contnets.
--
David Robley Techno-JoaT, Web Maintainer, Mail List Admin, etc
CENTRE FOR INJURY STUDIES Flinders University, SOUTH AUSTRALIA
The best way to accelerate a Mac is at 9.8 m / sec^2.
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]