表单提交数据到数据库和 url
Posted
技术标签:
【中文标题】表单提交数据到数据库和 url【英文标题】:Form submit data to database and to url 【发布时间】:2013-12-31 13:02:54 【问题描述】:我需要将表单提交到 url 进行处理,并将表单字段插入数据库。表单是标准 html,动作当前设置为:
<FORM name = "HTML_FORM" METHOD=POST ACTION="https://urlhere/MRcgi/ProcessIncomingForms.pl">
我的第一个想法是将操作更改为自定义 php 页面,这将
-
将数据发送到上述脚本
执行插入数据库。
但是 - 这是我的问题 - 不确定它们是否可以按顺序完成以及如何完成??
注意:我无权访问 ProcessIncomingForms.pl 脚本,我认为这无关紧要,但是表单字段与数据库字段不匹配,因此我还必须重新分配才能提交到数据库。例如:
$help_user = $_POST['username'];
$help_dept = $_POST['help_dept'];
【问题讨论】:
使用ajax
保存表单数据,然后提交您的表单另一个网址
【参考方案1】:
按照您的建议更改操作,然后在新的 php 页面上正常插入数据库,然后创建一个表单并将其提交给用户:
<form action='https://urlhere/MRcgi/ProcessIncomingForms.pl' method='post' name='frm'>
<?php
foreach ($_POST as $a => $b)
echo "<input type='hidden' name='".htmlentities($a)."' value='".htmlentities($b)."'>";
?>
</form>
<script language="javascript">
document.frm.submit();
</script>
【讨论】:
不确定我是否明白这一行:echo "";每个表单值都需要这样做吗? 即对于原始表单上的每个表单输入,都有一个关联的名称($a)和值($b)。我们将这些中的每一个输出到一个隐藏的表单字段中。这导致表单包含原始表单包含的确切字段和数据,但现在在我们的新 php 页面上而不是原始页面上。然后,我们可以在进行任何其他处理后提交此表格。我们基本上是透明地将 POST 请求转发到 ProcessIncomingForms.pl 啊,好的。所以如果有十个领域......?对不起,我很密集。 那么foreach会运行10次,每次输出一个原始字段。以上是关于表单提交数据到数据库和 url的主要内容,如果未能解决你的问题,请参考以下文章