How to display value in drop down list after form has been reloaded
Posted on
16th Feb 2014 07:03 pm by
admin
Please bear with me as I am very new to php and html.
I have a form with several drop down menus, the one at the top shows a list that when an item is selected fills in the form below including the other drop downs. So when an item is selected the form gets info from a mysql database and then fills in the form. At this point the user can further modify the form and re-submit it to update the database. This means that the drop downs in the form not only need to display the relavent options from the database to reflect the existing choice but also when clicked on show a list to allow the user the change the selection from the list.
This means that the dropdown needs to:
show the words 'select item' when the form is first loaded and the form is empty
show the current selection when the defined by a selection in the top drodown
show all the available items when the list is dropped down
Curently my drop down does only this:
shows the nothing when the form is first loaded and the form is empty
shows the current selection when defined by a selection in the top drodown
show all the available items when the list is dropped down plus the one that was there before it was clicked on, therefore doubing the option up showing the same option twice
The form is here if you would like to see it in action: http://www.spencercarpenter.co.uk/portfolioAppFiles/simpleForm.php
And a snippet of code from one of th drop downs is here:
Code: <select name="img01" onChange="updateImg(this, 'thumbImg01')">
<option value=-"-1" ><?php echo $row_chosen_pItem['img01']; ?></option>
<?php buildFileList5('uploaded');?>
</select>
the code inside the 'buildFileList5' looks like this:
Code: <?php
function buildFileList5($theFolder)
{
// Execute code if the folder can be opened, or fail silently
if ($contents = @ scandir($theFolder))
{
// initialize an array for matching files
$found = array();
// Create an array of file types
$fileTypes = array('jpg','jpeg','gif','png');
// Traverse the folder, and add filename to $found array if type matches
$found = array();
foreach ($contents as $item)
{
$fileInfo = pathinfo($item);
if (array_key_exists('extension', $fileInfo) && in_array($fileInfo['extension'],$fileTypes))
{
$found[] = $item;
}
}
// Check the $found array is not empty
if ($found)
{
// Sort in natural, case-insensitive order, and populate menu
natcasesort($found);
$selectedImage = ""; //default image
foreach ($found as $filename)
{
if(!empty($_POST['img01']) && $_POST['img01'] == $filename)
{
$sel = "SELECTED";
$selectedImage = $filename;
}
echo "<option value='$filename' $sel>$filename</option>n";
}
}
}
}
?>
I hope that is enough info to explain it.
If anyone could tell how to get the dropdown working properly I would be very gratefull.
Thanks a lot
No comments posted yet
Your Answer:
Login to answer
241
49
Other forums
how to make database item unique
Hey guys,
is it possible to do this:
I have the database item $title being pulled for
selectbox+database connection retrive problem
Code: [Select]
<tr>
<th align="left" scope="c
Reduce redundancies in switch functions?
Hello all! I somewhat new to PHP, and was wondering if anyone could give some suggestions on a swit
array empty
Hiya peeps,
Ok here is the codes.
order.php
Code:
Asset Transfer from One plant to another within same company code
Hi,
Please advise how to transfer one asset from one plant to another plant within same c
php calculate
this code echoes correctly the sum but the inserted result is 0??
Code: <?php
$TotalNum
Check premium expire
Hi,
I am making a simple file hosting site and want to check if users premium subscriptions h
Printer configuration
Hi All,
Suppose one of the user deleted the printer settings unfortunatly ,then what is the pro
need help in creating captcha
hi i have a problem creating captcha system. i create some basic script for image displaying but it
C - Reading a file into a byte array
Hi,
I'm trying to read a file into a byte array in C. I have to use C as this is for a loadru