我通过jQuery提交表单后,我的if(isset)验证返回false,但是在没有jquery的情况下完成后工作正常 . 我使用jQuery的原因是因为我需要提交多个表单:
Button
<input class="btn btn-primary" type ="submit" id="myButton"
name="create_record" value="Submit 1">
jQuery:
<script>
$(document).ready(function () {
$("#myButton").click(function (event) {
event.preventDefault();
$("#form1").submit();
// $("#form2").submit();
});
});
</script>
PHP
<?php
if(isset($_POST['create_record'])){
$ecode = $_POST['ecode'];
$ename = $_POST['ename'];
$date = $_POST['date'];
$jobRole = $_POST['jobRole'];
}else{
echo "did not receive anything";
}
?>
总是得到“没有收到任何东西” . 有人可以请帮助 .
3 回答
您必须将form方法设置为“POST”类型,如果要在同一页面中接收表单数据,则清空“action”键,否则给出目标链接 .
让我知道它是否适合你 .
如果通过按钮单击以传统方式提交表单,则仅发送提交按钮值 . 由于您是通过javascript提交表单,因此您需要明确包含提交按钮的值或以其他方式验证您的帖子数据 . 如果你需要点击的特定按钮的值,这样的东西应该工作:
至于你一次提交多个表格的目的,我相信如果没有使用ajax,这是不可能的here . 如果您需要有关如何执行此操作的指导,请更好地打开新问题 .
你的代码,isset($ _ POST ['create_record'])可能是假的,或者它没有收到任何值 . 如果您的查询只与jQuery一起放在一个PHP文件中,则需要首先检查算法或使用var_dump()进行测试 . 其次,如果它不起作用,为它做一个替代解决方案 . 使用表单时使用正确的HTML代码,或者仅制作另一个用于接收帖子的PHP文件 .
尝试测试所有代码 .