Re: php filling in listbox value based on db record ?? [message #169403 is a reply to message #169401] |
Thu, 09 September 2010 15:37 |
PAkerly
Messages: 7 Registered: September 2010
Karma:
|
Junior Member |
|
|
On Sep 9, 10:03 am, matt <matthew.leonha...@gmail.com> wrote:
> On Sep 9, 9:21 am, PAkerly <pake...@gmail.com> wrote:
>
>
>
>> I've got an html page that fills in text boxes based on an sql
>> record. Doing things like this:
>
>> $sql = "SELECT date, user1, user2, user3, id
>> FROM myuserdata
>> WHERE id= '$txtid'
>> ORDER BY id";
>
>> //Get a result set from the query (this is the array)
>> $rs = mysql_query($sql) or die(mysql_error() . "<br />Sql:" . $sql);
>
>> //Declare an empty array to store the result set in
>> $array = array();
>
>> //Iterate through the result set we declared earlier, looping through
>> each row
>> while($row = mysql_fetch_array($rs, MYSQL_ASSOC))
>> {
>> //Append the row from the database, onto the array :)
>> $array[] = $row;
>
>> }
>
>> and then to fill in text boxes based on the previously selected ID I
>> do...
>> foreach($array as $row):
>
>> <input name="txtdate" type="text" id="txtdate" value="<?php echo
>> $row['date'];?>"/>
>
>> SO NOW I WANT TO ALSO SELECT A DEFAULT VALUE FOR A LISTBOX BASED ON
>> THE ID....
>
>> <select name="lstuser2" id="lstuser2">
>> <option value="A">A</option>
>> <option value="B">B</option>
>> <option value="C">C</option>
>> </select>
>
>> So lets say that the record for this user called for the listbox to be
>> set to C b/c thats whats in the DB for this person, how could I do
>> this based on the record?
>
>> thanks.
>
> I think this is a pretty standard method:
>
> $values = array("A", "B", "C");
> echo "<select ...>";
> foreach ($values as $option)
> {
> $selected = ($row['field'] == $option) ? "selected" : "";
> echo "<option value='$option' $selected>$option</option>";}
>
> echo "</select>";
I'm not having a lot of luck with this....
It sort of does what I want, I guess I just dont know where I need to
put it. I thought at one point I had it working well but the listbox
had 4 selections A, B, C, C - I'm guessing because C was what the
record actually had. Is this the way it should work?
|
|
|