これにはおそらく非常に基本的なものが必要になるでしょうが、私が望む方法でこれを行うための答えが見つかりません。私が持っているのは、記事の mysql テーブルと、記事が気に入った場合に情報が記録されるお気に入りのテーブルです。そのため、あるテーブルから好きな記事をすべて選択し、別のテーブルからすべての記事を選択して、それらすべてをフィードとして表示する必要があります。私が助けを必要としているのは、投稿のいずれかが気に入った場合は、いいねボタンを表示しないということです (または、まだ気に入っていない場合は、ボタンを表示します)。誰でもこれで正しい方向に私を向けることができますか? ここに私が持っているコードがありますが、最後に気に入ったものだけが表示されます:
<?php
$check_like_sql = "SELECT * FROM posts WHERE type = 'Like' && poster = '$yourid'";
$check_like_res = mysqli_query($con, $check_like_sql) or die (mysqli_error());
if(mysqli_affected_rows($con)>0){
while($likes = mysqli_fetch_array($check_like_res)){
$yourlike = $likes['media'];
}
}
?>
<?php
$get_posts_sql = "SELECT posts.*, members.username, members.avatar, fans.connection FROM posts LEFT JOIN members ON members.id = posts.poster LEFT JOIN fans ON fans.fan = '$yourid' WHERE posts.poster = fans.connection ORDER BY date DESC";
$get_posts_res = mysqli_query($con, $get_posts_sql) or die (mysqli_error());
if(mysqli_affected_rows($con)>0){
while($posts = mysqli_fetch_assoc($get_posts_res)){
$postid = $posts['id'];
etc
etc
if($yourlike == $postid){
$likethis = "<a href=\"php/unlike.php?poster=$yourid&post=$postid\">Unlike</a> . ";
}
else if($posttype == "Like"){
$likethis = "";
}
else{
$likethis = "<a href=\"php/like.php?poster=$yourid&lat=$yourlat&lon=$yourlon&like=$postid&user=$postusername\">Like</a> . ";
}
$post .= "";
}
}
?>