データベースを操作して、同様のシステムを作成しています。人が投稿を気に入るたびにいいねを追加する機能を追加するまで、すべて正常に機能していました。これは、古いいいねを新しいいいねに 1 を加えたものに設定する mysql_query です。
次のようになります。
mysql_query("UPDATE `news` SET `post_likes` = `post_likes` + 1 WHERE `post_id` = $post_id");
これは関数全体です:
function add_like($post_id){
$post_id = (int)$post_id;
mysql_query("UPDATE `news` SET `post_likes` = `post_likes` + 1 WHERE `post_id` = $post_id");
mysql_query("INSERT INTO `likes` (`id` , `post_id`) VALUES (".$_SESSION['id'].", $post_id)");
}
プラスワンは、私が間違っていると思うものです。post_likes を出力すると、正しい値が出力されます。
各値に 1 ではなく 9 を追加しています。
なぜこれが起こっているのでしょうか?私はとても単純なものを見過ごしているかもしれません。
皆さんありがとう!