gpt4 book ai didi

php - 同一页面上的 2 个表单 php

转载 作者:行者123 更新时间:2023-12-04 01:57:59 27 4
gpt4 key购买 nike

我的学习簿给了我一个作业,要求我在一页上有 2 个表格并将它们都输出到同一页。这可能吗?两种形式都可以独立工作。两者都有 Action :

<?php echo $_SERVER['PHP_SELF']; ?>". 

两者都有一个提交按钮,但该按钮只提交它所属的表单。不过,这可能是有道理的。

问题是我需要页面在单击 2 个提交按钮中的一个时发布两个表单输出或随后按下它们,但第一个表单中的信息需要保留在页面上。

这是可能的还是我正在尝试做不可能的事?

表格如下;

表格 1:

<form name="orderform" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Korting:
<tr>
<td>
<input type="checkbox" name="korting[]" value=15 /> Student 15% <br>
<input type="checkbox" name="korting[]" value=10 /> Senior 10% <br>
<input type="checkbox" name="korting[]" value=5 /> Klant 5% <br>
<hr />
</td>
</tr>
<tr>
<td>
betalingswijze
<input type="radio" name="betalingswijze" value="paypal"> Paypal
<input type="radio" name="betalingswijze" value="mastercard"> Mastercard
<input type="radio" name="betalingswijze" value="visa"> Visa
<hr />
</td>
<tr>
<td>
<img src="toshiba.jpg" alt=" " />
</td>
</tr>
<tr>
<td>
Toshiba Sattelite A100-510 Basisprijs 999.99
</td>
</tr>
<tr>
<td><!--Shopping Cart Begin-->
<input type="hidden" name="toshibaproduct" value="001" />
<input type="hidden" name="toshibamerk" value="toshiba" />
<input type="hidden" name="toshibamodel" value="Sattelite A100-510" />
Operating system <select name="toshibaos" value="Toshiba">
<option value="xp">Windows XP</option>
<option value="vista">Windows Vista</option>
<option value="linux">Linux</option>
</select>
Aantal: <input type="text" size=2 maxlength=3 name="toshibaaantal" value="0" />
<input type="hidden" name="toshibaprijs" value="999.99" />

<input type="image" src="bestel.jpg" border=0 value="bestellen" />
<hr />

<tr>
<td>
<img src="acer.jpg" alt=" " />
</td>
</tr>
<tr>
<td>
Acer Aspire 5735Z Basisprijs 529.99
</td>
</tr>
<tr>
<td>
<input type="hidden" name="acerproduct" value="002" />
<input type="hidden" name="acermerk" value="acer" />
<input type="hidden" name="acermodel" value="Aspire 5735Z" />
Operating system <select name="aceros" value="Acer">
<option value="xp">Windows XP</option>
<option value="vista">Windows Vista</option>
<option value="linux">Linux</option>
</select>
Aantal: <input type="text" size=2 maxlength=3 name="aceraantal" value="0" />
<input type="hidden" name="acerprijs" value="529.99" />

<input type="image" src="bestel.jpg" border=0 value="bestellen" />
<hr />
</td><!--Shopping Cart End-->
</tr>
</form>

表格 2

<form name="klant gegevens" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border=1 >
<tr>
<td colspan="2">
<b>Factuur klantgegevens</b>
</td>
</tr>
<tr>
<td width="100">Naam: </td>
<td>
<input type="text" sie="55" name="naam" />
</td>
</tr>
<tr>
<tr>
<td>Adres: </td>
<td>
<input type="text" sie="55" name="adres" />
</td>
</tr>
<tr>
<td>Woonplaats:</td>
<td>
<input type="text size="34" name="woonplaats">
Postcode:<input type="text" size="6" name="postcode">
</td>
</tr>
<tr>
<td>e-mail:</td>
<td>
<input type="text" size="55" name="email">
</td>
</tr>
<tr>
<td>Feedback:</td>
<td>
<textarea cols="40" rows="3" name="commentaar">
</textarea>
</td>
</tr>
</table>
<input type="image" src="checkout.png" value="send"/>
</form>

两者都有在提交时启动的功能。对不起,间距。我在自己的文件中有更好的文件,但我只是不知道如何在这个网站上正确显示它们。

问候,

伦纳特

最佳答案

Action 表示将接收发布数据的页面。您可以使用不同的操作或具有不同参数的相同操作。如果您使用相同的操作,则必须插入一个允许管理不同情况的参数。您可以插入一个隐藏字段来执行此操作。

考虑这些简单的形式:

<form name="form_a" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="hidden" name="form" value="A">
<button type="submit">Form A</button>
</form>

<form name="form_b" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="hidden" name="form" value="B">
<button type="submit">Form B</button>
</form>

要管理不同的提交,您必须检查隐藏字段的值:

if(isset($_POST['form'])){

switch ($_POST['form']) {
case "A":
echo "submitted A";
break;

case "B":
echo "submitted B";
break;

default:
echo "What are you doing?";
}
}

您不能同时提交两个单独的表单,因为每次提交都代表对服务器的不同请求。

您可以手动合并两个表单的字段,或使用 Javascript 为您完成此操作。请记住,如果您通过 Javascript 执行此操作,则表单的字段必须具有不同的名称。

如你所见here你可以简单地通过 jQuery 来完成:

var str1 = $("form_a").serialize();
var str2 = $("form_b").serialize();
$.post(url, str1 + "&" + str2);

其中 url 是表单的操作参数

关于php - 同一页面上的 2 个表单 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34381649/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com