美元.Post数据成功返回数据不成功,但成功
$.post data success returning data unsuccessfully, but successfully?
我在一个"喜欢"的函数在php和jquery工作,我在它的最后一部分。当我点击:
<a href="#" class = "like" onclick="like_add(<?php echo $post_id ?>);">like</a>
<span id="post_<?php echo $post_id ?>_likes">
<?php echo $post_likes; ?>
</span>
add_like.php中的函数:
<?php add_like() ?>
提交用户数据,并将数据库中的类似计数加1。
我遇到的问题是,我得到一个警告,说成功的时候,它不应该是,它不更新计数,直到我刷新页面。我应该收到"有效!"’并获得相同的计数。
编辑* *现在,当我点击like按钮时,它会返回警报中like_add.php的"success"。确切地说:
成功"
like.js
function like_add(post_id){
$.post('../public/like_add.php', {post_id:post_id}, function(data){
if (data == 'success') {
like_get(post_id);
alert("works!");
}else{
alert("'" + data + "'");
}
});
}
function like_get(post_id){
$.post('../public/like_get.php', {post_id:post_id}, function(data){
$('#post_'+post_id+'_likes').text(data);
});
}
add_like.php
<?php
if(isset($_POST['post_id'], $_SESSION['user_id'])
&& post_exists($_POST['post_id'])){
$post_id = $_POST['post_id'];
$user_id = $_SESSION['user_id'];
if (previously_liked($post_id, $user_id) === true) {
echo "You've already liked this";
} else{
add_like($post_id, $user_id);
echo 'success';
}
}?>
如果您在<?php
之前或关闭?>
标记之后有空白(如硬返回),您将返回比您在警告' success'
时看到的"成功"更多。找到这个空格并删除它。确保你的开始PHP标签与脚本页面的左上角齐平。
正如评论者所提到的,一个简单的修复方法是修剪data
变量,使' success'
成为'success'
;
相关文章:
- 如何从servlet获取数据到ajax成功
- ajax请求成功,但可以'我看不到我的数据
- Ajax正确发布表单,但不会返回成功数据
- ajax成功地将数组中的数据放入表中各自的输入中
- 使用JSON数据检索AJAX外部成功函数
- 使 ajax 请求和成功数据显示在 id <选择>选择>部分中
- 按钮在第一次成功的 ajax 数据加载后不起作用
- 为什么不允许在jquery数据表服务器端处理ajax中使用成功
- Ajax响应成功,但无法使用数据(未捕获语法错误:意外标识符)
- 如何在ajax成功调用中读取解析后的json数据
- ajax调用成功,但未返回任何数据
- 编辑当前表单向导以成功发布数据
- 当调用成功时,如何从angular 2中的http调用返回数据
- 在 require.js 中返回成功数据,并带有回调
- 成功:功能(数据);不使用命名函数
- jQuery$.ajax方法.成功:使用响应数据的函数
- 如何访问作为参数发送到jquerypost的成功回调中的数据值
- Ajax响应给出数据成功错误
- jQuery/json/Ajax -如何从数据成功中找到第一响应
- 美元.Post数据成功返回数据不成功,但成功