I have a form that enables the user to insert multiple data into the database. I have been trying to insert them but to no avail.
Below is the form
<tr>
<td>
<select title = "Please choose" name="menutype[]">
<option value="-1" >--Select--</option>
<?php
$query = "SELECT * FROM MenuType";
$result = $mysqli->query($query);
if ($result==false) {
die( mysqli_error($mysqli));
}
while ($menutype = mysqli_fetch_array($result)) {
?>
<option value="<?php echo $menutype['MenuTypeID'] ?>"><?php echo $menutype['MenuTypeName'] ?></option>
<?php
}
?>
</select>
</td>
<td><input type="text" name="name[]" /></td>
<td><input type="file" name="picture[]" /></td>
<td><textarea rows="4" cols="40" name="description[]"></textarea></td>
<td><input type="text" name="price[]" value=""/></td>
<td>
<select title="Please choose" name="status[]">
<option value="-1" />--Select--</option>
<option value="Available" />Available</option>
<option value="Limited" />Limited</option>
</select>
</td>
</tr>
Below is the php code
$name = $_POST['name'];
$description = $_POST['description'];
$price = $_POST['price'];
$status = $_POST['status'];
$menutypeid = $_POST['menutype'];
if(isset($_FILES['picture'])){
$name_array = $_FILES['picture']['name'];
$tmp_name_array = $_FILES['picture']['name'];
for($i = 0; $i < count($tmp_name_array); $i++){
if(move_uploaded_file($tmp_name_array[$i], "images/menu/".$name_array[$i])){
echo $name_array[$i]." upload is complete<br>";
} else {
echo "move_uploaded_file function failed for ".$name_array[$i]. "<br>";
}
}
$imageup = $tmp_name_array; // save the whole url address of the uploaded file into variable
foreach ($name as $value){
$query = "INSERT INTO menu (MenuID, MenuName, MenuPicture, MenuDescription, MenuPrice, MenuStatus, MenuTypeID)
VALUES ('', '$name', '$imageup', '$description', '$price', '$status', '$menutypeid' )";
$mysqli->query($query) or die(mysqli_error($mysqli));
//header('Location:view_menu_for_manager.php');}}
?>
I also have trouble uploading multiple files/images. Help
edited query
foreach ($name as $value){
$query = "INSERT INTO menu (MenuName, MenuPicture, MenuDescription, MenuPrice, MenuStatus, MenuTypeID)
VALUES ('$name', '$imageup', '$description', '$price', '$status', '$menutypeid' )";