0

私のページの一部は、この条件に一致する ID に対してのみ表示されるべきです:

<?php
    $admins = mysql_query("SELECT id FROM users WHERE is_admin='y'");
?>

1,4 または 1,4,7,3,10,[...] のようなものになるので、これらの人々 (ID) は専用のものを見ることができます...

以前は、次のようなものでした。

<?php
    if ($_SESSION['id'] == $customer['id']) 
    { 
        echo "<br />";
                [...] Dedicated content [...]
        }
?>

これは今日まで機能していました。今度は、データベース関連の、さらに多くの人のためにそれを作成する必要があり($_SESSION['id'] == resultますSELECT。どうすればそれを達成できますか?

アドバイスありがとう!

4

3 に答える 3

0

セッション ID をクエリにドロップし、mysql_num_rows() を使用して行を選択したかどうかを確認できます。

<?php
$admins = mysql_query("SELECT id FROM users WHERE id=".(int)$_SESSION['id']." AND is_admin='y'");
?>
于 2012-12-18T23:16:06.913 に答える
0

それらすべての人々をデータベースに入れて、次のように確認してください。

<?php
    $admins = mysql_query("SELECT * FROM users WHERE id='". mysql_real_escape_string($_SESSION['id']) ."' and  is_admin='y'");

?>

その時点で、少なくとも 1 行が返される場合 (そして、1 行だけが返されるはずです)、専用のコンテンツに進むことができます。

于 2012-12-18T23:16:14.930 に答える
0

セッション ID がデータベース内のユーザー ID と同じ場合、セッション ID がデータベース内の管理者である場所を確認できます。これにより、ニーズが簡素化されます

于 2012-12-18T23:17:07.567 に答える