-1

私がやりたいことは、ユーザーがログインしているときに、他の部門へのリンクが表示されない (営業担当者など) ことです。私のコードは次のとおりです。

$departmentidquery = mysql_query("SELECT department_id FROM users WHERE username            = '".$username."'");
$departmnetid = mysql_fetch_row ($departmentidquery);
<ul>
    <li><a href="logout.php">Logout.</a></li>
    <li <?php if ($departmnetid[0]!=1){?>style="display:none"<?php } ?>>  <a      href="admin.php">Admin Pgae</a> </li>
    <li <?php if ($departmnetid[0]!=2){?>style="display:none"<?php } ?>>  <a href="sales.php">sales Pgae</a> </li>
    <li <?php if ($departmnetid[0]!=3){?>style="display:none"<?php } ?>>  <a href="tech.php">Tech Pgae</a> </li>
</ul>

エラーは次のとおりです。

SCREAM: Error suppression ignored for
( ! ) Notice: Undefined variable: departmnetid in C:\wamp\www\Ticket.sys\index.php on line 49
SCREAM: Error suppression ignored for
( ! ) Notice: Undefined variable: departmnetid in C:\wamp\www\Ticket.sys\index.php on line 50
SCREAM: Error suppression ignored for
( ! ) Notice: Undefined variable: departmnetid in C:\wamp\www\Ticket.sys\index.php on line 51 

私はクエリから確信しています、私はすでにdisplay:nonewithのトリックを試しました<div>が、それを行うためのより良い方法はありますか?

4

2 に答える 2

4

必要に応じて PHP ブロックからシフトインしていません...このコードは次のようになります

<?php
    $departmentidquery = mysql_query("SELECT department_id FROM users WHERE username = '".$username."'");
    $departmnetid = mysql_fetch_row ($departmentidquery);
?>
<ul>
    <li><a href="logout.php">Logout.</a></li>
    <li <?php if ($departmnetid[0]!=1){?>style="display:none"<?php } ?>><a href="admin.php">Admin Pgae</a> </li>
    <li <?php if ($departmnetid[0]!=2){?>style="display:none"<?php } ?>><a href="sales.php">sales Pgae</a> </li>
    <li <?php if ($departmnetid[0]!=3){?>style="display:none"<?php } ?>><a href="tech.php">Tech Pgae</a> </li>
</ul>

また、mysql_fetch_row から実際に値が返されたかどうかを確認することもお勧めします。

于 2013-06-07T20:13:02.740 に答える
0

mysql インスタンスに問題がある可能性があります (インスタンスがダウンしている、無効なユーザー名/パス)。これを試しましたか?

if (!$departmnetid) {
    echo 'Could not run query: ' . mysql_error();
    exit;
}
于 2013-06-07T20:12:34.417 に答える