下面是我的ajax文件。在这里,我传递了所有文本框值。 我将这些值发布到edu.php。在那里,我想更新两个表,如细节和测试。
但是我的数据库中没有更新任何内容。虽然我用var_dump检查了值,但字符串似乎是空的。但是当从ajax传递时我用一个警告检查它,它显示了文本框中的所有值。所以我相信从ajax发布到php时会出现问题。
AJAX代码
$('#edubackgroundsubmit').click(function (event) {
event.preventDefault();
alert("Hello");
var per_email = $('#per_email').val();
var master_overall = $('#master_overall').val();
var master_pass_year = $('#master_pass_year').val();
var master_college = $('#master_college').val();
var master_univ = $('#master_univ').val();
var data1 ="master_qual="+master_qual+"&master_overall="
+master_overall+"&master_pass_year="+master_pass_year+"&master_college="+master_college+"&master_univ="+master_univ
+"&edu_flag="+edu_flag;
alert(data1);
$.ajax({
type:"POST",
url: "edu.php?per_mobile="+per_mobile,
dataString1: data1
}).done(function( dataString1 )
{
alert(dataString1);
$('#edu_alert').append(
'<div class="alert alert-success text-center">' +
'<button type="button" class="close" data-dismiss="alert">' +
'×</button>' + dataString1 + '</div>');
});
});
PHP文件
if (isset($_POST['pass_year_12'])) {
$pass_year_12 = $_POST['pass_year_12'];
} else {
$pass_year_12 = "";
}
$l1 = "UPDATE test
SET edu_flag='$edu_flag'
WHERE per_mobile='$per_mobile'";
$l2 = "UPDATE details
SET master_qual='$master_qual',
master_overall='$master_overall',
master_pass_year ='$master_pass_year ',
master_college='$master_college'
WHERE per_mobile='$per_mobile'";
$exec = mysqli_query($link, $l1);
if (mysqli_query($link, $l2)) {
echo "Education Details Updated Successfully";
} else {
echo "Error updating record: " . mysqli_error($link);
}
答案 0 :(得分:1)
答案 1 :(得分:0)
您的代码问题是您在edu.php发送数据?per_mobile
所以你需要在代码之前添加isset条件......比如这个
if(isset($_REQUEST['per_mobile'])){ //write your code here }
并将datastring替换为数据。 然后试试。
希望它可能会有所帮助。
例如,你也可以使用jQuery get或post方法,它更可靠,更容易学习。