2015-01-15 47 views
-3

我已经使用this website实现了一种基本的简单登录方法。我可以成功登录,但我想检索登录到网站的会员的名字,以将其存储到$_SESSION对象中。接收用户登录时的名字

$sql="SELECT * FROM users WHERE email='$myemail' and password='$mypassword'"; 
$result=mysql_query($sql); 

// Mysql_num_row is counting table row 
$count=mysql_num_rows($result); 

// If result matched $myusername and $mypassword, table row must be 1 row 

if($count==1){ 
    //$_SESSION[]; 
    // header("Location:http://localhost/website/test.php"); 
    } 
    else 
     echo "Wrong Username or Password"; 

Reference to the table

+0

不要使用'mysql_'函数。他们被弃用和不安全。使用PDO:http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers – muttley91

+0

@rar你好,我知道这一点。但对于我的课程,我的导师说他现在不介意'MySQL_'函数,下一课程,我们将使用'MySQLi'我需要使用这个函数。 – Moynul

回答

1

这是你想要做的吗?

if($count==1) 
{   
    $row = mysql_fetch_row($result); 

    session_start(); 
    $_SESSION['first_name'] = $row['firstname']; 

    header("Location:http://localhost/website/test.php"); 
} 
+1

这就是我需要的。非常感谢你!很遗憾,人们对使用'MySQL_'给出了不好的反馈。 – Moynul

+0

@Moynul,很高兴帮助。时代正在改变,每天都有更好的东西来:)我们必须接受他们的权利:) –

+1

我也了解,我也会改变我的方法,但现在我的老师要我使用旧的功能。 – Moynul

1

email字段必须包含唯一条目。

请参见id-4 & id-4这两行都包含完全相同的数据。 至于你的答案,

if($count==1) 
{ 
$row = mysql_fetch_assoc($result); 
$f_name = $row['firstname']; 
} 

现在,如果[email protected]password=g那么你的查询将失败,因为$count不会1。所以有效的用户也会看到登录失败消息。

+0

工作正常。做这份工作! – Moynul

+0

P.S - 我了解'count == 1'代码。其他条目已被删除。我正在使用“测试”作为“测试”帐户。 – Moynul