php メソッドでいいねキャンセル機能を実装します。最初にユーザーが気に入っているかどうかを判断し、次にユーザーが気に入っているかどうかに基づいて別の HTML をロードし、その後別のメソッドを呼び出してデータベースを増減します。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
php はどのように実装しますか?いいねとキャンセル機能?
php mysql ajax 部分的ないいね/いいねのキャンセル関数、各アカウントは 1 回だけいいね
いいねごとにいいねしたユーザーを記録し、その数をカウントするには「いいね!」を選択するには、まずユーザーが「いいね!」したかどうかを判断します。気に入るかどうかに応じて、別の HTML をロードし、別のメソッドを呼び出します。気に入った場合は、気に入った HTML が表示されます。気に入らなかった場合は、気に入った HTML が表示されます。気に入らなかった場合は、気に入らなかった HTML が表示されます。 htmlが表示されるので、同様の操作を行います
別の操作の場合は、データベースを増減します。同時に、さまざまなユーザーのレコードを追加または削除します。さまざまなボタンの背景を制御することで、さまざまな効果を表示できます。異なるユーザーのユーザーIDといいねIDの関係を記録することで、異なるいいねの制限を実現できます。
効果デモ
ユーザーIDが1の場合、いいねするといいね数が1増加します
ユーザーIDを1にするといいね数が1増加しますユーザー ID の場合 ID が 2 の場合、ユーザー 1 はすでに「いいね!」を付けており、ユーザー 1 のいいね数に基づいていいねの数は 1 つ増加します。
データベース
database は 2 つのデータ テーブルに分割されています。 1 つはいいねの数をカウントするために使用され、もう 1 つはさまざまなユーザーのいいねを記録するために使用されます。
2 つのデータ テーブルの詳細
データベースに接続
$con = new mysqli('localhost','root','','test'); if (!$con) { die('连接数据库失败,失败原因:' . mysqli_error()); }else { // echo "连接成功"; }
ユーザーが好むかどうかを判断する (操作ページ)
データベースから情報を抽出
//假设用户编号为1 $uId="1"; //假设赞编号为1 $zanId="1"; //查找赞id为1的点赞数 $count=mysqli_query($con, "SELECT count FROM zanCount WHERE zanId=$zanId "); $countResult=mysqli_fetch_array($count); $countZan=$countResult['count']; //查找改用户是否对赞id为1 点赞 $uIdLike=mysqli_query($con, "SELECT * FROM zanRecord WHERE uId=$uId "); $result=mysqli_fetch_array($uIdLike);
ユーザーが気に入るかどうかを判断して別のhtmlを出力
//点赞 if (isset($result)) { $showZan.=<< $countZan
cssスタイル
#dolike, #donolike { width:30px; height:30px; margin-left:20px; float:left;} #donolike { background:url(./images/nolike.png); background-size:30px 30px; } #dolike { background:url(./images/like.png); background-size:30px 30px; }
というajaxメソッド
必要なデータを渡します。zanId と uId がここに渡されます。いいねするために jq ファイルを導入することを忘れないでください。
function zan() { $.ajax({ type:"POST", url:"./likeSever.php", data:{'zanId':$("#zanId").val(),'uId':$("#uId").val()}, success:function(text){ $("#dolikeDIV").html(text); } }); }
いいねをキャンセル
function zanDel() { $.ajax({ type:"POST", url:"./disSever.php", data:{'zanId':$("#zanId").val(),'uId':$("#uId").val()}, success:function(text){ $("#dolikeDIV").html(text); } }); }
処理コード
ポイント褒める処理
//更新赞总数的数据 mysqli_query($con,"UPDATE zanCount SET count = count+1 WHERE zanId=$zanId"); //添加一条点赞记录 mysqli_query($con,"INSERT INTO zanRecord(zanId,uId) VALUES($zanId, $uId); "); //查找赞的总数 @$count=mysqli_query($con, "SELECT count FROM zanCount WHERE zanId=$zanId "); @$countResult=mysqli_fetch_array($count); @$countZan=$countResult['count']; //更改输出的html $show=""; $show=<< $countZan html; echo $show;
いいねのキャンセル
//更新赞总数的数据 mysqli_query($con,"UPDATE zanCount SET count = count-1 WHERE zanId=$zanId"); //添加一条点赞记录 mysqli_query($con,"DELETE FROM zanRecord WHERE zanId=$zanId AND uId=$uId "); //查找赞的总数 @$count=mysqli_query($con, "SELECT count FROM zanCount WHERE zanId=$zanId "); @$countResult=mysqli_fetch_array($count); @$countZan=$countResult['count']; //更新html $show=""; $show.=<< $countZan html;
PHP ビデオ チュートリアル」
以上がPHPでいいねとキャンセル機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。