由一个php脚本处理的多个表单
我尝试在php上创建一个订单页面。我创建了一个表单,将数据存储到数据库中。表单编号基于用户,是动态创建的由一个php脚本处理的多个表单,php,multiple-forms,Php,Multiple Forms,我尝试在php上创建一个订单页面。我创建了一个表单,将数据存储到数据库中。表单编号基于用户,是动态创建的 <?php if(isset($_POST['submit_num'])) { $number=$_POST['sky']; for($i=0;$i<$number;$i++) { $item = $_SESSION['item']; echo $item; $rec_query
<?php
if(isset($_POST['submit_num']))
{
$number=$_POST['sky'];
for($i=0;$i<$number;$i++)
{
$item = $_SESSION['item'];
echo $item;
$rec_query = "SELECT * FROM ylika";
$rec_result= mysql_query($rec_query) or die("my eroors");
echo '<form action="user_order_form.php" method="POST">';
echo '<html>';
while($row_rec = mysql_fetch_array($rec_result))
{
echo '<input type="checkbox" name="yliko[]" value='.$row_rec['onoma'].'> '.$row_rec['onoma'].'';
echo '<br>';
}
echo '<br>';
echo '<input type="submit" name="submit" value="ORDER">';
echo '</form>';
}
}
?>
所以我有很多表单和一个脚本来处理它们。如果我提交一个表单,那么它会将数据应用到数据库,但其他表单会消失。这是第二个php“处理程序”
<?php
if (isset($_POST['submit']))
{
$max_id = "SELECT MAX(id_order) FROM id_of_orders";
$x=mysql_query($max_id) or die("my eroors");
$id= mysql_fetch_array($x);
$xyz = $id['MAX(id_order)'];
$item = $_SESSION['item'];
$temp = $_POST['yliko'];
$temp2 = implode(",", $temp);
$inserts = ("INSERT INTO orders (order_id,product,ulika) VALUES ('$xyz' , '$item','$temp2')");
$inc_prod=("UPDATE proion SET Counter = Counter + 1 WHERE proion.onomasia='$item'");
mysql_query($inserts) or die(mysql_error());
mysql_query($inc_prod) or die(mysql_error());
}
?>
您可以有许多提交表单,但只需使用所有表单定义一个大的
,您就不会丢失任何信息
<?php
if(isset($_POST['submit_num']))
{
$number=$_POST['sky'];
echo '<form action="user_order_form.php" method="POST">';
for($i=0;$i<$number;$i++)
{
$item = $_SESSION['item'];
echo $item;
$rec_query = "SELECT * FROM ylika";
$rec_result= mysql_query($rec_query) or die("my eroors");
echo '<html>';
while($row_rec = mysql_fetch_array($rec_result))
{
echo '<input type="checkbox" name="yliko[]" value='.$row_rec['onoma'].'> '.$row_rec['onoma'].'';
echo '<br>';
}
echo '<br>';
echo '<input type="submit" name="submit" value="ORDER">';
}
echo '</form>';
}
?>
现在,您还可以将~$i~标识符添加到输入名称中,以便轻松区分哪个是哪个。这是echo'代码>应该在那里吗?似乎是个奇怪的地方(在很多代码之前…)不,我忘了,我的错。我提交了一份表格之后,它仍然会重新开始。你说的“重新开始”到底是什么意思?莱杰洛特的职位应该很好。在循环之前调用表单,然后循环发生,然后表单关闭。提交表单应该提交提供的所有内容。我尝试了这个方法,在创建了2-3个表单后,我按了提交1,它运行脚本并重置回菜单。我想要的是提交所有表单。我是否应该创建一个互斥体来等待所有提交,然后运行存储脚本?好的,我想我知道了。我应该删除内部提交输入,并为外部表单创建输入。