2015-01-10 210 views
0

我与login.When这个PHP代码我登录为“雇主”一切都ok.But当我作为员工登录它应该加载不同的page.It始终把它就像我的一个问题登录为“Employer.I想不通错误登录错误PHP

<?php 

session_start(); 
require_once('connection.php'); 


    //Connect to server 
    $link = mysql_connect($host, $user, $pw) or die(mysql_error()); 
    //Select the database 
    mysql_select_db ($db); 

    // Get the login credentials from user 
    $username = $_POST['Username']; 
    $userpassword = $_POST['Password']; 

    // Secure the credentials 
    $username = mysql_real_escape_string($_POST['Username']); 
    $userpassword = mysql_real_escape_string($_POST['Password']); 

    // Check the users input against the DB. 
    $query = "SELECT COUNT(`Username`) AS `total` FROM `users` WHERE `Username` = '$username' AND `Password` = '$userpassword'"; 
$result = mysql_query($query); 
$row = mysql_fetch_assoc($result); 
if($row['total'] == 1) 
{ 
    if($Username='Employer') 
    { 
    $_SESSION['loggedIn'] = "true"; 

     header("Location: indexemp.php"); 

    } 
} 
elseif($Username='Employee') 
{ 
     header("Location: indexempl.php"); 

} 
?> 
+0

请确保使用==标志您正在使用=登录if语句 –

+0

您有'='而不是'==' – Neat

回答

3

你有同样的错误你是使用赋值运算符=而不是比较运算符==:。

if($row['total'] == 1) 
{ 
    if($Username=='Employer') 
    { 
    $_SESSION['loggedIn'] = "true"; 

     header("Location: indexemp.php"); 

    } 
} 
elseif($Username=='Employee') 
{ 
     header("Location: indexempl.php"); 

} 
?> 
+0

我做了它,但现在代码没有显示任何内容。我登录并且它是空的 – ZackApostol

+0

打开错误报告,所以你可以看到php给你什么错误。也可能没有任何条件匹配,这也会导致空白页。 –

+0

尝试打印的'$ Username'值,以便你可以轻易猜出我们的错误。 –

2

您正在使用=赋值运算符而不是比较操作==

所以,你应该用在您的两个条件==

那么你的条件应该是

if($Username=='Employer')elseif($Username=='Employee')

如果你面对错误依然那么你可以通过打印的$Username值很容易找出错误。