-1

まだプログラミングとマークアップの初心者です...

さまざまなユーザーが利用可能か利用不可かを追跡するために、mysql テーブルから読み書きする小さなイン/アウト ボタンがいくつかあります。しかし、ステータスを変更するには、ボタンを 1 回しかクリックできません。その後、応答を停止します。どうすれば機能し続けることができますか?ありがとう!!!!

list.php

<html>
   <head>

   <script src="http://code.jquery.com/jquery-latest.js"></script>

   <script>
      $(function(){
         $(".rating").on("click", function(){
            var status = $(this).attr("id").substr(0,1);
            var id = $(this).attr("id").substr(1);
            var data = "id="+id+"&status="+status;

            $.ajax({
               type: "POST",
               url: "rate.php",
               data: data,
               success: function(e){
                  $("#r"+id).html(e);
               }
            })
         });
      });
   </script>

   <style>.rating { cursor: pointer; }</style>

   </head>

<body>
   <?php

   include ("headers.php");
   $qq = mysql_query("SELECT * FROM $io");


   while($rr=mysql_fetch_array($qq)){
      $id = $rr["id"];
      $content = $rr["status"];

      include("buttons.php");

      $list .= '<div style="border-bottom: 1px #32baed solid">'.$q[0].'
               <div id="r'.$id.'"><img class="rating" id="'.$q[0].$id.'" 
               src="'.$color.'"> '.$status.'</div></div><br><br>';
   }

   echo $list;

   ?>
</body>
</html>

rate.php

<?php
include ("headers.php");
$id = $_POST["id"];
$status = $_POST["status"];

if($status == 0){
    mysql_query("UPDATE $io SET status = 1 WHERE id='$id'");
}
else {
    mysql_query("UPDATE $io SET status = 0 WHERE id='$id'");
}
include("buttons.php");

$list = '<img class="rating" id="'.$q[0].$id.'" src="'.$color.'"> '.$status;
echo $list;

?>

ボタン.php

<?php

$q = mysql_query("SELECT status FROM $io WHERE id='$id'");
$q = mysql_fetch_array($q);

if($q[0]){
    $color = "green.png";
}
else{
    $color = "red.png";
}

?>

headers.php

<?php

$c = mysql_connect("localhost", "username", "password");
$db = mysql_select_db("likes", $c);


$io = 'io';
?>
4

2 に答える 2