0

我正在创建一个登录页面,当医生登录时,他/她将根据登录凭据重定向到医生表,而当卫生专业人员登录时,他们将根据他们的凭据重定向到健康表。如何使用 sql 语句来做到这一点?这是我到目前为止适用于医生登录的内容:

<?php
    session_start();

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

    if ($username&&$password) {

        $connect = mysql_connect("localhost","root","") or die ("Could not connect");
        mysql_select_db("telestroke_database") or die ("Could not find database");

        $query = mysql_query("SELECT * FROM doctor_credential_table WHERE Doctor_Username ='$username'      AND Doctor_Password ='$password'") or die(mysql_error($connect));
        $numrows = mysql_num_rows($query);

        if ($numrows!=0) {
            while ($row = mysql_fetch_assoc($query)) {
                $dbusername = $row['Doctor_Username'];
                $dbpassword = $row['Doctor_Password'];
                $dbdoctorid= $row['Doctor_ID'];
            }

            $_SESSION['Doctor_Username']=$username;
            $_SESSION['Doctor_ID']=$dbdoctorid;
            header( 'Location: doctor_patients.php' );
        } else {
            echo "Incorrect Username and/or Password.<br/>
                    <br/><a href='Homepage.html'>Click here to return to Homepage</a>";
        }
    }
?> 
4

2 回答 2

0

假设您的数据库中有某种标志,告诉检索的用户是医生或健康专家,那么它看起来像这样:

switch($row['professiontype']){
    case 'doc':
        header( 'Location: doctor_patients.php' );
        break;
    case 'hp':
        header( 'Location: healt_professional.php' );
        break;
}
于 2013-03-18T13:25:44.517 回答
0

如果医生和卫生专业人员都通过同一个表格登录,那么您将不会为每个表格设置单独的表格。您将有一个包含两种类型的中央用户表。

你可以有三张桌子。首先针对您的所有用户。二是针对不同的用户群体。第三个用于连接两者:

Users
id    username    password
1     John        -
2     Emma        -
3     Dave        -

Groups
id    name
1     Doctors
2     Health Professionals

UserGroups
userId    groupId
1         1
2         1
3         2

然后,您将从 UserGroups 表中进行选择,以确定您的用户是什么类型。

select groupId from UserGroups where userId = $userId;

switch ($groupId)
    case 1:
        /* Do what is required for the Doctors group */
    case 2:
        /* Health professions group... */
    etc

请注意,第三个表不是必需的,此信息可以简单地放在用户表中。

于 2013-03-18T13:31:32.150 回答