2017-03-26 4 views
-3

私はそれをクリックすると、まずユーザーがログインしているかどうかをチェックします。同様のカウントは1を追加します。しかし、毎回リフレッシュ・ページでは、カウントは再び0になります。なぜこれが起こるのでしょうか? HTML:私は同じようなボタンを作成しますが、ページをリフレッシュした後、同様のカウントは0になります

<div class="post-footer"> 
<div class="flag"> 
<span class="flag-wrapper"> 
<a class="flag-action" href="#"> 
<i class="fa fa-heart-o" ></i> 
<span class="count">0</span> 
<span class="flag-text" >Like this news post</span> 
</a> 
</span> 
</div> 
</div> 

jqueryの:

$(document).ready(function(){ 
$(document).on("click", ".flag" ,function(){ 
    // 
    var count = $(".count").text(); 
    // 
    var id= $(".ds-subtitle").attr("rel"); 
    // alert(id); 
    alert(count); 
    $.ajax({ 
     url:"functions/php/like.php", 
     type:"POST", 
     // cache:false, 
     data:{count:count,id:id}, 
     success:function(data){ 
      // alert(data); 
      // console.log(data); 
      if (data == "0") { 
       alert("do not log in"); 
       $("#popup-box1").show(); 
      } 
      if (data == "1"){ 
       alert("already log in"); 
       $("#popup-box1").hide(); 
       // alert(); 
       count++; 
       $("span .count").text(count); 
      } 
     }   
    }); 
}); 
}); 

PHP:

<?php 
session_start(); 

if (!isset($_SESSION["id"])) { 

    echo "0"; 


}else{ 
    echo "1";// 
    // 
    $id= $_POST["id"]; 
    // 
    $userid = $_SESSION["id"]; 
    // 
    $conn = mysqli_connect("localhost", "root", "", "maroon5"); 

    // 
    $sql = " INSERT INTO fav (news_id, user_id) 
      VALUES ('$id', '$userid') "; 
    $res = mysqli_query($conn, $sql); 


} 
?> 
+0

どの部分を入れて解決しますデータベースからの同様のカウントとそれをユーザーに示しますか? – JJJ

+0

mysql行に1を加えるには 'UPDATE'が必要です。あなたはあなたの価値を上書きする可能性が最も高いです。 –

答えて

0

しかし、毎回ページを更新し、カウントが0ので、再び

になりますあなたの関数は、唯一のあなたはおそらくメソッド最後にonload

0

同じメソッドを呼び出すか、リフレッシュする必要がonclick

$(document).on("click", ".flag" ,function(){ 

と呼ばれる、私はthis.Iがあなたのコードを取り出し、この

<?php 
    $conn = mysqli_connect("localhost", "root", "", "maroon5"); 

    $sql1 = " SELECT * FROM fav WHERE news_id=1 "; 
    $res1 = mysqli_query($conn, $sql1); 
    $nums = mysqli_num_rows($res1); 

    ?> 
    <div class="post-footer"> 
    <div class="flag"> 
    <span class="flag-wrapper"> 
    <a class="flag-action" href="#"> 
     <i class="fa fa-heart-o" ></i> 
     <?php 
      echo "<span class='count'>". $nums ."</span>"; 
      ?> 
      <!-- <span class="count">0</span> --> 
      <span class="flag-text" >Like this news post</span> 
    </a> 
    </span> 
     </div> 
    </div> 
    </article> 
    </div> 
    </div> 
関連する問題