私は2つのテーブルを持っています:
content:
id access
1 3
2 5
3 9
viewlevels:
id group
1 [10,12,15]
2 [8,12,11]
3 [9,10,5]
content の access フィールドは、viewlevels の id フィールドに関連付けられています。
現在のユーザー グループに応じて、viewlevels の行を選択します。たとえば、グループ = 10 の場合、クエリは行 1 と 3 を選択します。グループが 12 の場合、行 1 と 2 を選択します。次のクエリを使用しています。
$query="SELECT id FROM #__viewlevels WHERE rules LIKE '%$group%'";
私の課題は、アクセスがテーブルビューレベルの上記のクエリから選択された ID と一致するテーブルコンテンツの列 ID の行数をカウントすることです。
次のコードを試してみましたが、エラーが返されます: undefined variable: nartigos
$query="SELECT count(id) FROM #__content WHERE access IN (SELECT id FROM #__viewlevels WHERE rules LIKE '%$group%')";
if ($stmt = mysqli_prepare($link, $query)) {
/* execute query */
mysqli_stmt_execute($stmt);
/* store result */
mysqli_stmt_store_result($stmt);
$nartigos=mysqli_stmt_num_rows($stmt);
/* close statement */
mysqli_stmt_close($stmt);
};
echo "Nº de artigos " .$nartigos;