検索するすべてのテーブル行にユーザーIDが存在するかどうかを確認したいと思います。
編集申し訳ありませんが、私は誤解を招いたと思います。ユーザーがカテゴリ内のすべての記事を読んだかどうかを確認したいのですが、カテゴリを表示するフォーラムフロントエンドがあり、カテゴリ内に記事があります。
カテゴリ画面で、すべての記事が読まれているか、すべての記事が読まれていないかの画像を表示したいので、カテゴリごとにすべての記事をループする必要があります。これは、以下のクエリの例であり、ユーザーIDがすべてに存在するかどうかを確認します。はいの場合は行が返され、ユーザーIDが欠落している行がある場合はすべての記事が読み取られ、一部の記事は読み取られていません
これは私のSQLクエリです
$colname_readposts = "-1";
if (isset($_GET['Thread_Category_Article_id'])) {
$colname_readposts = $_GET['Thread_Category_Article_id'];
}
mysql_select_db($database_test, $test);
$query_readposts = sprintf("SELECT Thread_Article_User_Read FROM Thread_Articles WHERE Thread_Category_Article_id = %s", GetSQLValueString($colname_readposts, "int"));
$readposts = mysql_query($query_readposts, $cutthroats) or die(mysql_error());
$row_readposts = mysql_fetch_assoc($readposts);
$totalRows_readposts = mysql_num_rows($readposts);
返されたすべての行にユーザーIDが含まれているかどうかを確認するにはどうすればよいですか?アイデアは、ユーザーがすべての記事を読んだかどうかを確認することです。はいの場合はREADを表示し、いいえの場合はUNREADを表示します。
行ごとの結果は次のようになります。0、15、20、37これらは、ユーザーが投稿を表示したときに入力されるIDです。私は、ユーザーが特定の記事を読んだかどうかを示すために、単一の記事に対してこのチェックを取得することができましたが、複数の記事をチェックする方法がわかりません:
これが私の単一の記事のチェックです:
<?php
$userid = $_SESSION['loggedin_id'];
$userreadlist = $row_readposts['Thread_Article_User_Read'];
$myarray = (explode(',',$userreadlist));
if (in_array($userid,$myarray )){
?>
html image READ
<?php } else { ?>
html image UNREAD
<?php } ?>
どんな助けでもいただければ幸いです。カール