链接到用户个人资料

时间:2015-11-03 11:09:46

标签: php mysql

我列出了包含所有用户的列表,当您点击其名称时,它应显示用户个人资料。但是我的查询只是看到了我的个人资料。无论我在列表中选择哪个用户。

所以列表在我的admin.php文件中,因为只有管理员才能看到用户列表。

<ul>
 <?php
 include_once('connect.php');

 $pdostatement = $conn->prepare( 
   'SELECT 
     f_name 
   FROM 
     tbl_user 
   WHERE 
     id = :user_id' );
 $pdostatement->execute(array(
   'user_id'  => $_SESSION["user_id"]
 ));

 $list        =  $pdostatement->fetchAll();
 $value_fname = $list;


 foreach($value_fname as $row) {
 echo '<li value="'.$row['f_name'].'"><a href="index.php?page=profile" >'.$row['f_name'].'</a></li>';

}

 ?>
</ul> 

$ _ SESSION [&#39; user_id&#39;]在我的登录文件中声明

if ($result[0]["password"] !== md5($_POST['password'].'D6tp'.$_POST['email'])) {
header('Location: /Home/index.php?page=login');
} else {
   $_SESSION['loged_in'] = true;
   $_SESSION['user_id'] = $result[0]["id"];
   header('Location: /Home');
};

这是我数据库的一部分

id  int(11) AUTO_INCREMENT
state   varchar(255)
f_name  varchar(255)

我感谢你的每一次帮助!

2 个答案:

答案 0 :(得分:0)

下面的代码包含仅选择当前用户的位置。

$pdostatement = $conn->prepare( 
'SELECT 
   f_name 
 FROM 
   tbl_user 
 WHERE 
   id = :user_id' );
$pdostatement->execute(array(
  'user_id'  => $_SESSION["user_id"]
));

要选择所有用户,请更改此类代码

$pdostatement = $conn->prepare( 
'SELECT 
   f_name 
 FROM 
   tbl_user 
 WHERE 1' );
$pdostatement->execute();

答案 1 :(得分:0)

在您的数据库中,每个用户都有一个唯一的ID。

这样做,

table1 -> id int, state varchar, f_name varchar
table2 -> id int, f_name, friend

然后

select * from table2 where f_name = :user_id