wsbot wrote:

This is a continuation of the discussion at



http://stackoverflow.com/questions/944158/php-multiple-dropdown-box-form-submit-to-mysql



which ended with the words: "Once you have the variables, it is trivial to create new rows." No doubt that's generally true, but apparently not for this learner... Very Happy



Given the following form:



    <form action="form.php" method="POST">

<select name="colors[]" multiple="yes" size="2">
<option>Red</option>
<option>Blue</option>
</select>
<input type="submit" value="Go!">
</form>


how do I create new rows? The following script



foreach($_POST['colors[]'] as $color) 

{
$id = mysqli_real_escape_string($link, $color);
$sql = "INSERT INTO colors SET id = '$id'";
}


raises the error



 Warning: Invalid argument supplied for foreach() in form.php on line ...



whereas the following



    $colors = $_POST['colors[]']; 

for ($i = 0; $i < count($colors); $i++)
{
$color = $colors[$i];
$sql = "INSERT INTO colors SET id = '$color'";
}


raises no errors but does no row creation.



What triviality am I missing here?



View Solution
PHP Multiple Dropdown Box Form Submit To MySQL (Part 2)

Posted: Mon Feb 08, 2010 1:01 pm