Php 提交操作前发布文本输入不一致
我正在尝试创建一个同意书,并让用户输入他们的姓名。当按下submit按钮时,我将他们的文本输入发布到一个PHP文件中,该文件会将他们的名字邮寄给我(我知道有更简单的方法可以做到这一点)。然而,这种形式的工作不一致;有时记录用户名,有时不记录。在我的电脑上,它通常都能工作,所以我很难解决这个问题 代码如下:Php 提交操作前发布文本输入不一致,php,jquery,forms,submit,Php,Jquery,Forms,Submit,我正在尝试创建一个同意书,并让用户输入他们的姓名。当按下submit按钮时,我将他们的文本输入发布到一个PHP文件中,该文件会将他们的名字邮寄给我(我知道有更简单的方法可以做到这一点)。然而,这种形式的工作不一致;有时记录用户名,有时不记录。在我的电脑上,它通常都能工作,所以我很难解决这个问题 代码如下: //submitlink is a dummy link $("#submitlink").click(function(event){ event.preventDefault();
//submitlink is a dummy link
$("#submitlink").click(function(event){
event.preventDefault();
var name1val = $("#name1").val();
if (!(name1val == '')){
$.post("mail.php",
{ name : name1val, time : curr_time}
);
//agree is a <form id="agree" action="nextpage.php">
$("#agree").submit();
else{
//display error message
}
}
//submitlink是一个虚拟链接
$(“#提交链接”)。单击(函数(事件){
event.preventDefault();
var name1val=$(“#name1”).val();
如果(!(name1val==''){
$.post(“mail.php”,
{name:name1val,time:curr_time}
);
//同意是一种选择
$(“#同意”)。提交();
否则{
//显示错误消息
}
}
而mail.php是:
<?php
$name = $_POST['name'];
$text = $name . " has begun the survey at " . date("F j, Y, g:i a");
$result = mail('myemail', 'User has begun survey', $text);
?>
您能想出此代码无法工作的原因吗?如何确保在用户单击提交按钮后可靠地发布数据?您正在提交第二个表单
$(“#同意”)。提交()在确认AJAX调用成功之前。;
有时会起作用;通常不会。将submit
调用放入成功处理程序:
$.post("mail.php",
{ name : name1val, time : curr_time},
function(){
$("#agree").submit();
}
);
这将在AJAX请求完成后调用代码。您缺少一个右括号和一个圆括号。如果(name1val!='')右括号在哪里?那么
呢。单击(function(){…})
?抱歉-右括号在正确的代码中。我复制并粘贴了相关部分