变量不通过javascript和php

时间:2012-06-29 06:03:56

标签: php javascript function variables

为我的博客网站处理喜欢/不喜欢的功能,并且变量不会流过。我已经盯着这几天了,因为所有的代码看起来很好而且我已经包含了包含varibales的所有必要页面,所以无法找到它。任何见解?

这是"按钮"我正在使用"喜欢"按钮:

    <a href="#" onclick="like_add('. $blabid .')" class="like">Like</a> <span id="likes" class="likereadout">' . $likes . '</span>

当我&#34;检查元素&#34;时,id变量会正确显示,但不会传递给下面的Javafunction:

    function like_add(postid) {
     $.post('like_add.php', {postid:postid}, function(data) {
     if (data == 'success') {
     alert('Woohoo');
     } else { 
       alert('I need sleep.');
       }
      });
      }

Javascript应该将变量传递给like_add.php,其中包含:

    <?php
    include 'init.php';
    if (isset($_POST['postid']) && article_exists($_POST['postid'])) {


    $postid = $_POST['postid'];

    if (previously_liked($postid) === true) {
    echo 'You\'ve already liked this!';
} else {
  add_like($postid);
  echo 'success';
  }
     }
     ?>

其中引用了init.php文件中包含的以下php函数:

    function article_exists($postid) {
     $postid = (int)$postid;
     return (mysql_result(mysql_query("SELECT COUNT('id') FROM 'blabbing' WHERE 'id' = $postid"), 0) == 0) ? false : true;

}

    function add_like($postid) {
     $postid = (int)$postid;
     mysql_query("UPDATE 'blabbing' SET 'likes' = 'likes' + 1 WHERE 'id'= $postid");
     mysql_query("INSERT INTO 'likes' ('user_id', 'id') VALUES ($ip, $postid)");
     }

Realllll对所有这些都是新手,所以请放轻松我。非常感谢你的帮助!

function article_exists($postid) {
     $postid = (int)$postid;
     return (mysql_result(mysql_query(

1 个答案:

答案 0 :(得分:0)

当您通过$ .post发送AJAX数据时,必须对其进行字符串化处理:

$.post('like_add.php', JSON.stringify({postid:postid}), function(data) {