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
Need help with some php code :)
Hey! I'm quite new to this whole thing, so please don't fire me with shait on this one =D
I'm
PHP SUBMIT
Code: <input name="doLogin" type="image" src="images/loginsubmit.jpg
newbie question
Hi out thereIm totaly new in this forum and to .net and vb so here is a totaly newbie question.I wan
show random images
hey guys
can someone please suggest a way in which the following code can be edited so it onl
Uploading files/images via forms
Hey all, I am building a database for work that will contain some minor data on plant species along
FROM_UNIXTIME($phpdate);
Hello,
I tried to use this :
$date = FROM_UNIXTIME($phpdate);
ANd I was t
Need Successful Return
Hello I am currently working a form here, and I have everything figured out except when I click the
How many users online in the last 24-hours using time()?
I'm fairly new to PHP. I have a MySQL table called 'users' and a field called 'loggedin' which is in
Delete HTML file after loading
I have limited experience with php and its been a year or two since I've last used it. I have a sma
Session variable help
I'm having a very troubling issue. Maybe I'm just looking over something but I have looked at the co