Solved

HTML Form and php

Posted on 2002-06-19
14
216 Views
Last Modified: 2006-11-17
Anyone with code to populate options for a select box on an HTML form from a mysql database using php.
something like the following:

<form.....>
<select name=".." >
#options should be updated dynamically

<option value= .. </option>
</select>
</form>
0
Comment
Question by:bravismore
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
14 Comments
 
LVL 32

Expert Comment

by:Batalf
ID: 7093785
Let's say you have a table called person with these fields:

ID int
firstname varchar(64)
lastname varchar(64)

Do simply like this:

<select name="person">
<?
$res = mysql_query("select * from person order by lastname,firstname");
if($inf = mysql_fetch_array($res))
{
  do{
   echo "<option value=\"".$inf["ID"]."\">".$inf["firstname"]." ".$inf["lastname"]."</option>";
  } while($inf = mysql_fetch_array($res));
}
?>
</select>


0
 
LVL 32

Expert Comment

by:Batalf
ID: 7093792
After submission the ID of selected person is stored in variable $person.

0
 

Author Comment

by:bravismore
ID: 7094855
thanks will try it out
0
Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

 

Author Comment

by:bravismore
ID: 7094947
It's working but I want it to store multiple values rather than a single value

I want it to store all values selected
0
 
LVL 32

Expert Comment

by:Batalf
ID: 7095012
OK. That's easy:

<select name="person[]" size="5" multiple>
<?
$res = mysql_query("select * from person order by lastname,firstname");
if($inf = mysql_fetch_array($res))
{
 do{
  echo "<option value=\"".$inf["ID"]."\">".$inf["firstname"]." ".$inf["lastname"]."</option>";
 } while($inf = mysql_fetch_array($res));
}
?>
</select>

After submission you have an array called $person. You could loop through this array to get all your options:

for($no=0;$no<count($person);$no++)
{
  echo $person[$no];
}


Note the change in <select> :

<select name="person[]" size="5" multiple>



0
 

Author Comment

by:bravismore
ID: 7095242
Thanks Will give it a try.

I want a user to select a particular option and would want to make reference to the selected value. I would like to pass this value to another page for processing.

What should i write for

form action and method.
0
 
LVL 32

Expert Comment

by:Batalf
ID: 7095247
method should always be post. Action would be the page you want the page to be submitted to.

<form action="otherPage.html" method="post">

0
 

Author Comment

by:bravismore
ID: 7095270
Sorry, I want it as a drop down box.
With mutiple values

I want a data-driven drop down box.
0
 
LVL 32

Expert Comment

by:Batalf
ID: 7095274
Drop-down box where you could select multiple values is not possible in HTML.

Batalf.
0
 

Author Comment

by:bravismore
ID: 7095295
Sorry I want to select a single value from multiple values
0
 
LVL 32

Accepted Solution

by:
Batalf earned 60 total points
ID: 7095301
Then, can't you use my first example which includes a drop-down box with several options. From the drop-down you could select a single value:

<select name="person">
<?
$res = mysql_query("select * from person order by lastname,firstname");
if($inf = mysql_fetch_array($res))
{
 do{
  echo "<option value=\"".$inf["ID"]."\">".$inf["firstname"]." ".$inf["lastname"]."</option>";
 } while($inf = mysql_fetch_array($res));
}
?>
</select>
0
 
LVL 11

Expert Comment

by:shmert
ID: 9643503
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
Accept: batalf
Please leave any comments here within the next seven days.
               
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
               
Sam Barnum
EE Cleanup Volunteer              
0

Featured Post

Are You Using the Best Web Development Editor?

The worlds of web hosting and web development are constantly evolving. Every year we see design trends change, coding standards adapt and new frameworks/CMS created. With such a quick pace of change it’s easy to get lost trying to keep up.

See if your editor made the list.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Developers of all skill levels should learn to use current best practices when developing websites. However many developers, new and old, fall into the trap of using deprecated features because this is what so many tutorials and books tell them to u…
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question