0

スクリプトをローカルで実行します。両方がログに記録されている場合(adminまたはuser)、通常のユーザーの管理ボタンを非表示にします。私のコードは以下のとおりですが、通常のユーザーが管理機能ボタンをログに記録しても機能しません。

私のデータベース宣言:

<?php
mysql_select_db($database_pods, $pods);
$query_Recordset1 = "SELECT * FROM `user`";
$Recordset1 = mysql_query($query_Recordset1, $pods) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);

//initialize the session
if (!isset($_SESSION)) {
  session_start();
}
?>

通常のユーザーから隠すための私のボタンコード:

<?php if ($row_Recordset1['level'] == 'admin'){
<table align="center" width="50" bordercolor="#000000" border="0">
    <tr>
       <td align="center"><a href="adduser.php">Add User</a></td>
    </tr>
</table>
} ?>
4

1 に答える 1

0

あなたのクエリで

SELECT * FROM user

ページを表示するユーザーだけでなく、すべてのユーザーを選択します。あなたの場合、結果セットの最初のユーザーは管理者です。そのため、誰もがこのボタンを見ることができます。次のように、ページを表示するユーザーに対してのみクエリを実行する必要があります。

SELECT * FROM user WHERE id = $id

一方id、特定のユーザーを一意に識別するデータベース内の列で$idあり、現在のユーザーの ID を持つ PHP 変数です。この ID を取得する方法は、コーディングしたログイン システムによって異なります。

于 2012-08-18T13:01:35.413 に答える