我有许多具有不同形式的php页面。我想将所有表单提交到名为insertproc.php的页面,在其中调用存储过程以插入数据。
但是我正在使用jquery提交表单数据。我应该在每次提交表单后在jquery脚本中设置会话变量吗?或者我可以使用其他一些功能来实现这一点。
例:
如果我有3个页面,请说page1.php,page2.php,page3.php,其中每个表单都有一个表单,请说form1.php,form2.php,form3.php。我必须将所有3种形式提交给insertproc.php。在insertproc.php中,我检查了我提交的表单。因此,我必须运行相应的存储过程。
我应该在提交表单后在jquery中设置一些会话变量
$ Session ['proc_name'] ='插入用户';
并在insertproc.php中检查会话变量的值以调用其各自的存储过程。
请指导我如何实现此功能。
最佳答案
如果您使用jQuery提交表单,则可以在<form>
元素中添加另一个输入字段,其中说明了它是哪种表单,例如form1.php
:
<form ...>
...
<input type="hidden" name="source" value="form1"/>
</form>
form2.php
:<form ...>
...
<input type="hidden" name="source" value="form2"/>
</form>
等等
然后,您可以通过检查
$_POST['source']
轻松地检查PHP代码中提交值的来源。无需会话。实际上,会话可能是错误的根源-如果有人打开form1
,而不提交,在另一个选项卡中打开form2
,然后返回form1
并提交form1
,该怎么办?我猜会话变量将包含来自form2
而不是form1
的值。