2013-09-24 38 views
1

如何显示主页 上的登录用户名想,如果用户名是admin登录用户名时,管理员用户登录自己的帐户,然后主页显示如何显示在PHP

这个用户名是admin

请参阅链接 现在它的表现是这样 http://www.koolfree.com/ImageUpload/uploads/1380106000.jpg

,我想这样的 http://www.koolfree.com/ImageUpload/uploads/1380025395.jpg

请帮我解决这个问题 感谢

这是MySQL表

CREATE TABLE IF NOT EXISTS `member` (
    `mem_id` int(11) NOT NULL AUTO_INCREMENT, 
    `username` varchar(30) NOT NULL, 
    `password` varchar(30) NOT NULL, 
    `fname` varchar(30) NOT NULL, 
    `lname` varchar(30) NOT NULL, 
    `address` varchar(100) NOT NULL, 
    `contact` varchar(30) NOT NULL, 
    `picture` varchar(100) NOT NULL, 
    `gender` varchar(10) NOT NULL, 
    PRIMARY KEY (`mem_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; 

这是index.php文件

<?php 
    //Start session 
    session_start();  
    //Unset the variables stored in session 
    unset($_SESSION['SESS_MEMBER_ID']); 
    unset($_SESSION['SESS_FIRST_NAME']); 
    unset($_SESSION['SESS_LAST_NAME']); 
?> 
<form name="loginform" action="login_exec.php" method="post"> 
<table width="309" border="0" align="center" cellpadding="2" cellspacing="5"> 
    <tr> 
    <td colspan="2"> 
     <!--the code bellow is used to display the message of the input validation--> 
     <?php 
      if(isset($_SESSION['ERRMSG_ARR']) && is_array($_SESSION['ERRMSG_ARR']) && count($_SESSION['ERRMSG_ARR']) >0) { 
      echo '<ul class="err">'; 
      foreach($_SESSION['ERRMSG_ARR'] as $msg) { 
       echo '<li>',$msg,'</li>'; 
       } 
      echo '</ul>'; 
      unset($_SESSION['ERRMSG_ARR']); 
      } 
     ?> 
    </td> 
    </tr> 
    <tr> 
    <td width="116"><div align="right">Username</div></td> 
    <td width="177"><input name="username" type="text" /></td> 
    </tr> 
    <tr> 
    <td><div align="right">Password</div></td> 
    <td><input name="password" type="text" /></td> 
    </tr> 
    <tr> 
    <td><div align="right"></div></td> 
    <td><input name="" type="submit" value="login" /></td> 
    </tr> 
</table> 
</form> 

connection.php文件

<?php 
$mysql_hostname = "localhost"; 
$mysql_user = "root"; 
$mysql_password = ""; 
$mysql_database = "simple_login"; 
$prefix = ""; 
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database"); 
mysql_select_db($mysql_database, $bd) or die("Could not select database"); 
?> 

这是login_exec.php文件

<?php 
    //Start session 
    session_start(); 

    //Include database connection details 
    require_once('connection.php'); 

    //Array to store validation errors 
    $errmsg_arr = array(); 

    //Validation error flag 
    $errflag = false; 

    //Function to sanitize values received from the form. Prevents SQL injection 
    function clean($str) { 
     $str = @trim($str); 
     if(get_magic_quotes_gpc()) { 
      $str = stripslashes($str); 
     } 
     return mysql_real_escape_string($str); 
    } 

    //Sanitize the POST values 
    $username = clean($_POST['username']); 
    $password = clean($_POST['password']); 

    //Input Validations 
    if($username == '') { 
     $errmsg_arr[] = 'Username missing'; 
     $errflag = true; 
    } 
    if($password == '') { 
     $errmsg_arr[] = 'Password missing'; 
     $errflag = true; 
    } 

    //If there are input validations, redirect back to the login form 
    if($errflag) { 
     $_SESSION['ERRMSG_ARR'] = $errmsg_arr; 
     session_write_close(); 
     header("location: index.php"); 
     exit(); 
    } 

    //Create query 
    $qry="SELECT * FROM member WHERE username='$username' AND password='$password'"; 
    $result=mysql_query($qry); 

    //Check whether the query was successful or not 
    if($result) { 
     if(mysql_num_rows($result) > 0) { 
      //Login Successful 
      session_regenerate_id(); 
      $member = mysql_fetch_assoc($result); 
      $_SESSION['SESS_MEMBER_ID'] = $member['mem_id']; 
      $_SESSION['SESS_FIRST_NAME'] = $member['username']; 
      $_SESSION['SESS_LAST_NAME'] = $member['password']; 
      session_write_close(); 
      header("location: home.php"); 
      exit(); 
     }else { 
      //Login failed 
      $errmsg_arr[] = 'user name and password not found'; 
      $errflag = true; 
      if($errflag) { 
       $_SESSION['ERRMSG_ARR'] = $errmsg_arr; 
       session_write_close(); 
       header("location: index.php"); 
       exit(); 
      } 
     } 
    }else { 
     die("Query failed"); 
    } 
?> 

这是auth.php文件

<?php 
    //Start session 
    session_start(); 
    //Check whether the session variable SESS_MEMBER_ID is present or not 
    if(!isset($_SESSION['SESS_MEMBER_ID']) || (trim($_SESSION['SESS_MEMBER_ID']) == '')) { 
     header("location: index.php"); 
     exit(); 
    } 
?> 

,这是home.php文件

<?php 
    require_once('auth.php'); 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Untitled Document</title> 
<style type="text/css"> 
<!-- 
.style1 { 
    font-size: 36px; 
    font-weight: bold; 
} 
--> 
</style> 
</head> 

<body> 
<p align="center" class="style1">Login successfully </p> 
<p align="center">This page is the home, you can put some stuff here......</p> 
<p align="center"><a href="index.php">logout</a></p> 
</body> 
</html> 

回答

1

你应该只能够打印出用户名,因为你在设置会话。

只要您有session_start()在您的成员的主页的顶部。

<?php 
    print $_SESSION['SESS_FIRST_NAME']; 
?> 

应该做的伎俩,看作是设置为用户名。

A快速注意,请尝试使用Mysqli或PDO之类的东西,因为mysql库不再被开发。

+0

感谢亲爱的,现在工作的罚款 – user2468472

1

在home.php文件将这个:

... 
<p align="center">username: <?php echo $_SESSION['SESS_FIRST_NAME']; ?></p> 
<p align="center" class="style1">Login successfully </p> 
... 
0

尝试

<?php 
     echo $_SESSION['SESS_FIRST_NAME']; 
    ?> 
+0

他将在session_start()@页的开始太.. – Ashish

0
<?php 
    session_start(); 
    require_once('auth.php'); 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Untitled Document</title> 
<style type="text/css"> 
<!-- 
.style1 { 
font-size: 36px; 
font-weight: bold; 
} 
--> 
</style> 
</head> 

<body> 
<p align="center" class="style1">Username: <?php echo $_SESSION['SESS_FIRST_NAME']; ?> </p> 
<p align="center" class="style1">Login successfully </p> 
<p align="center">This page is the home, you can put some stuff here......</p> 
<p align="center"><a href="index.php">logout</a></p> 
</body> 
</html>