1

私のブログ投稿サイトの好き嫌い関数に取り組んでいますが、変数が流れません。私はこれを何日も見つめてきましたが、すべてのコードが問題ないように見え、変数を含む必要なすべてのページを含めたので、ブレークを見つけることができません. 洞察はありますか?

これは、「いいね」ボタンに使用している「ボタン」です​​。

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

「要素を調べる」と id 変数は正しく表示されますが、次の Java 関数には渡されません。

    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)");
     }

これはすべて初めてなので、気楽にやってください。手伝ってくれてどうもありがとう!

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

1 に答える 1

0

$.post を介して AJAX データを送信する場合、文字列化する必要があります。

$.post('like_add.php', JSON.stringify({postid:postid}), function(data) {
于 2012-06-29T07:06:24.370 に答える