惠们..
我有一个问题,我没有知道什么错误
我有验证页,在该页中它会检查组以识别用户
如果组为admin,则将显示adminpage。
如果该组是用户,则将显示用户页面。
情况:当我输入用户名和密码时,验证页面显示为空白页面...我不知道代码有什么问题...
伙计们..帮助我..

这是代码:

<?php
session_start();
if($_POST['id']!=null && $_POST['pass']!=null){

    $username=$_POST['id'];
    $password=$_POST['pass'];


$link=@mysql_connect('localhost','root')
    or die("Could not connect".mysql_error());
    if (!@mysql_select_db("fyp",$link)){
    echo mysql_error();
    }

$db_select = mysql_select_db('fyp',$link);
if (!$db_select) {
die("Database selection failed: " . mysql_error());
}

    $sql="SELECT * from access where username='".$username."' AND password='".$password."'";
    $result=mysql_query($sql);
    if(!$result){
    die(mysql_error());
    }
    $numrecord=mysql_num_rows($result);
    if($numrecord>0){
        if($group=="admin" ){
        $_SESSION['id']=$username;
        $_SESSION['pass']=$password;
        $_SESSION['group'] = $row['group'];
        mysql_close($link);
        header("Location:adminpage.php");
        }
        elseif($group=="user"){
        $_SESSION['id']=$username;
        $_SESSION['pass']=$password;
        $_SESSION['group'] = $row['group'];
        mysql_close($link);
        header("Location:userpage.php");
        }
    }

    else{
    mysql_close($link);
    header("Location:login.php?error=2");
    }
}
else{
    header("Location:login.php?error=1");
    }

?>

最佳答案

您没有使用mysql_fetch_array或其他函数从数据库中实际获取行。尝试这个:

$numrecord=mysql_num_rows($result);
if($numrecord>0){

    $row = mysql_fetch_array($result); ////////////
    $group = $row['group'];

    if($group=="admin" ){
    $_SESSION['id']=$username;
    $_SESSION['pass']=$password;
    $_SESSION['group'] = $row['group'];
    ................

另外,您需要在查询中使用mysql_real_escape_string函数以避免安全问题。

关于php - 验证页错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2346765/

10-09 10:17