2015-11-03 94 views
0

我有一个清单,所有我在它的用户,当你点击他们的名字应该显示用户的个人资料。但用我的查询,我只是看到我的个人资料。无论我在列表中选择哪个用户。链接到用户个人资料

所以列表是我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 [ 'user_ID的']宣布对我的login文件

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

当然,你会得到自己的个人资料,您查询您的ID。您需要发送该用户的ID(您想看到谁)不知何故,可能通过GET像'的index.php?页=个人资料&ID = $行[“身份证”]',然后改变'_SESSION'到'_GET' – kero

+0

我会尝试一下。感谢您的回答 – Sven

+0

所以我试了一下,但它不起作用..当我这样做,就像你做的ID没有出现在网址 – Sven

回答

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(); 
0
在你的数据库

每个用户都有一个唯一的ID。

做到这样,

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

然后

select * from table2 where f_name = :user_id 
相关问题