2017-05-01 27 views
0

登錄我怎麼在我的主頁(的index.php),如果他們登錄顯示訪問者的用戶名不顯示,怎麼辦我如果他們沒有登錄,則不顯示任何內容。PHP - 在主頁上,顯示的用戶名如果​​登錄,如果不是在

例如,如果他們已登錄:Welcome,username01!
如果他們沒有登錄:歡迎!你還沒有註冊。

這是我register.php

<?php 
session_start(); 
//connect to database 
$db=mysqli_connect("localhost","root","","mydbname"); 
if(isset($_POST['register_btn'])) 
{ 
    $username=mysql_real_escape_string($_POST['username']); 
    $gender=mysql_real_escape_string($_POST['gender']); 
    $email=mysql_real_escape_string($_POST['email']); 
    $password=mysql_real_escape_string($_POST['password']); 
    $password2=mysql_real_escape_string($_POST['password2']); 
    if($password==$password2) 
{  //Create User 
     $password=md5($password); //hash password 
     $sql="INSERT INTO users(username,gender,email,password) 
     VALUES('$username','$gender' ,'$email','$password')"; 
     mysqli_query($db,$sql); 
     $_SESSION['message']="You are now logged in"; 
     $_SESSION['username']=$username; 
     header("location:index.php"); //redirect to home page 
} 
else 
{ 
    // failed 
    $_SESSION['message']="Error. Both passwords do not match."; 
} 
} 
?> 

回答

0

既然你設置會話的用戶名一旦他們登錄上,你可以做到以下幾點:如果

echo isset($_SESSION['username']) ? $_SESSION['username'] : ''; 

檢查關鍵'用戶名'在會話中設置,如果是則顯示其他明智的保留空白。

最好爲它創建一個函數。您可能還想在其他地方顯示用戶名。

例子:

function getUsername() { 
    return isset($_SESSION['username']) ? $_SESSION['username'] : ''; 
} 

只需撥打getUsername()在代碼中使用它。

0

的index.php

session_start(); //add this line if you did not start session 
echo 'Welcome : '.isset($_SESSION['username']) ? $_SESSION['username'] : 'You are not registered yet'; 
相關問題