未将Post数据接收到数据库中,但使用javascript和php显示成功结果
我实现了一种使用javascript在网页上提交表单的新方法,以便在不重新加载/刷新页面的情况下显示成功结果。我对Javascript非常陌生,我确信我遗漏了一些明显的东西 我知道这不是由于数据库的限制,我已经仔细检查了一遍,以确保它不是某种外键错误 我知道php post查询可以工作,因为它仍然可以使用我在实现javascript之前使用的原始表单 新代码:未将Post数据接收到数据库中,但使用javascript和php显示成功结果,javascript,php,ajax,Javascript,Php,Ajax,我实现了一种使用javascript在网页上提交表单的新方法,以便在不重新加载/刷新页面的情况下显示成功结果。我对Javascript非常陌生,我确信我遗漏了一些明显的东西 我知道这不是由于数据库的限制,我已经仔细检查了一遍,以确保它不是某种外键错误 我知道php post查询可以工作,因为它仍然可以使用我在实现javascript之前使用的原始表单 新代码: <div id="contact_form"> <form name="contact" action="">
<div id="contact_form">
<form name="contact" action="">
<fieldset>
<input type="hidden" name="likesid" id="likesid" size="30" value="4" class="text-input" />
<input type="hidden" name="likerid" id="likerid" size="30" value="117" class="text-input" />
<br />
<button style="width: 100%; border: none; background:none!important; background-color: transparent; cursor: pointer;" type="submit" name="unlikestatus" class="button" id="submit_btn">
<i class="fa fa-thumbs-o-up fa-fw ss-large ss-text-blue"></i>
</button>
</fieldset>
</form>
</div>
<script>
$(function() {
$(".button").click(function() {
// validate and process form here
});
});
$(function() {
$('.error').hide();
$(".button").click(function() {
// validate and process form here
$('.error').hide();
var likesid = $("input#likesid").val();
if (likesid == "") {
$("label#likesid_error").show();
$("input#likesid").focus();
return false;
}
var likerid = $("input#likerid").val();
if (likerid == "") {
$("label#likerid_error").show();
$("input#likerid").focus();
return false;
}
var dataString = 'likesid='+ likesid + '&likerid=' + likerid;
//alert (dataString);return false;
$.ajax({
type: "POST",
url: "simpletest.php",
data: dataString,
success: function() {
$('#contact_form').html("<div id='message'></div>");
$('#message').html("<h2>Liked!</h2>")
.hide()
.fadeIn(1500, function() {
$('#message').append("");
});
}
});
return false;
});
});
</script>
我的javascript中没有任何地方提到“likestatus”,我想这可能就是问题所在吧?可能吗
我得到了这段javascript代码,并对其进行了修改。PHP post请求正在表单上查找name='likestatus'字段,而上面的代码中不存在该字段。要将该值传递到ajax调用中,首先需要将该字段添加到HTML表单中 您还需要将其添加到javascript变量dataString中,该变量通过ajax传递给PHP调用 说明:
ajax调用的data属性定义了传递到指定的url属性的所有变量。如果ajax调用成功,它将触发success属性,这并不一定意味着数据已保存在数据库中。PHP post请求正在表单上查找name='likestatus'字段,该字段在上述代码中不存在。要将该值传递到ajax调用中,首先需要将该字段添加到HTML表单中 您还需要将其添加到javascript变量dataString中,该变量通过ajax传递给PHP调用 说明:
ajax调用的data属性定义了传递到指定的url属性的所有变量。如果ajax调用成功,它将触发success属性,这并不一定意味着数据已保存在数据库中。检查数据字符串。likesid,likerid正在发送到服务器。而不是likesTasCheck数据字符串。likesid,likerid正在发送到服务器。不likesTasYou先生,是100%正确的,我完全按照你说的做了,而且成功了。非常感谢。先生,你是100%正确的,我完全按照你说的做了,而且成功了。非常感谢。
if(isset($_POST['likestatus']))