我试图选择正确的用户名,但出于某种原因,它会继续选择myphpadmin中的第一个用户名
<?php
if (logged_in() === true) {
$item = array(
'<li id="item_0"><a href="../../index.php">Home</a></li>',
'<li id="item_1"><a href="../../music.php" >Music</a></li>',
'<li id="item_2"><a href="../../pictures.php">Pictures</a></li>',
'<li id="item_3"><a href="../../poertry.php">Poertry</a></li>'
);
$db->query("SELECT * FROM `menusort` WHERE '$user_data[username]'
= username");
$order = $db->get();
$order = explode(',', $order[0]['data']);
foreach($order as $key => $value) {
echo $item[$value];
};
} else {
echo '<li><a href="../../index.php">Home</a></li>
<li><a href="../../music.php" >Music</a></li>
<li><a href="../../pictures.php">Pictures</a></li>
<li><a href="../../poertry.php">Poertry</a></li>';
}
?>
答案 0 :(得分:4)
您需要更改where子句并添加引号:
"SELECT * FROM `menusort` WHERE username = '".$user_data['username']."'"
答案 1 :(得分:1)
不正确的数据可以帮助您! 还需要编辑查询。
<?php
$db->query("SELECT * FROM `menusort` WHERE `username`='".$user_data[username]"'");
假设用户名是您的列名。 希望它会对你有所帮助。快乐的编码!
答案 2 :(得分:0)
第二:您的where子句错误。您将列与值进行比较...将其更改为:
$db->query("SELECT * FROM menusort WHERE username = '". $user_data['username'] ."'");