[英]Display user details once logged in
我想在登錄后顯示所有用戶詳細信息,但只顯示“數組”一詞。 此外,唯一顯示的是用戶,而不是其他人,即名字、姓氏等。
session_start();
if(!$_SESSION['user']) {
header("location: login.php");
}
$conn = mysql_connect("localhost","root","");
mysql_select_db("dbname",$conn);
$query = "
SELECT
id,
username,
firstname,
surname,
address1
FROM users
WHERE user = '".$_SESSION['user']['username']['firstname']['surname']
['address1']."'
";
?>
<label for="usermail">User Email</label>
<h7><?php echo $_SESSION['user']; ?></h7>
<label for="line2">Line 2</label>
<h7><?php echo $_SESSION['address1']; ?></h7>
login.php 文件是:
session_start();
if($_SESSION['user']!=''){header("Location:welcome.php");}
$dbh=new PDO('mysql:dbname='';localhost', 'root', '');
$email=$_POST['mail'];
$password=$_POST['pass'];
if(isset($_POST) && $email!='' && $password!=''){
$sql=$dbh->prepare("SELECT id,password,psalt FROM users WHERE
username=?");
$sql->execute(array($email));
while($r=$sql->fetch()){
$p=$r['password'];
$p_salt=$r['psalt'];
$id=$r['id'];
}
$site_salt="salt1";/
$salted_hash = hash('sha256',$password.$site_salt.$p_salt);
if($p==$salted_hash){
$_SESSION['user']=$id;
header("Location:welcome.php");
}else{
echo "Username OR Password is Incorrect...";
}
}
我建議不要把事情復雜化,因為它可以在一個非常簡單的查詢中完成。 歡迎.php頁面
<?php
session_start();
if($_SESSION['user']){
$userid = $_SESSION['user'];
}else{
//your redirection;
}
$conn = mysql_connect("localhost","root","");
mysql_select_db("dbname",$conn);
$query = ("SELECT * FROM users WHERE id = '$userid'");
?>
<label for="usermail">User Email</label>
<h7><?php echo $query['yourcolumnname']; ?></h7>
<label for="line2">Line 2</label>
<h7><?php echo $query['yourcolumnname']; ?></h7>
......
要指定更多參數,它看起來像
"SELECT * FROM user
where id = '$userid'
AND useremail = '$useremail'
AND.........")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.