我的域上的管理面板显示错误的用户名和密码。 databsse,phpmyadmin相关问题?

时间:2019-02-16 13:43:25

标签: php database

我在登录连接到我的应用程序的域管理面板时遇到问题。

即使我从phpmyadmin复制tbl_admin的用户名和密码,我也得到了错误的用户名和密码。

这来自我的phpmyadmin SQL结构。

CREATE TABLE `tbl_admin` (
  `id` int(11) NOT NULL,
  `full_name` varchar(255) NOT NULL,
  `username` varchar(100) NOT NULL,
  `password` varchar(100) NOT NULL,
  `email` varchar(200) NOT NULL,
  `phone` varchar(255) NOT NULL,
  `image` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

//////////////////////下面的代码是我的function.php from filemanager ///////////////// /////////////////

#Admin Login
function adminUser($username, $password)
{

    global $mysqli;

    $sql = "SELECT id,username FROM tbl_admin where username = '".$username."' and password = '".md5($password)."'";       
    $result = mysqli_query($mysqli,$sql);
    $num_rows = mysqli_num_rows($result);

    if ($num_rows > 0)
    {
        while ($row = mysqli_fetch_array($result))
        {
            echo $_SESSION['ADMIN_ID'] = $row['id'];
                        echo $_SESSION['ADMIN_USERNAME'] = $row['username'];

        return true; 
        }
    }

}

1 个答案:

答案 0 :(得分:0)

根据您的查询

$sql = "SELECT id,username FROM tbl_admin where username = '".$username."' and password = '".md5($password)."'";

您将密码与数据库行中编码为md5的密码进行比较。 如果您尝试直接从表tbl_admin复制密码,请在查询时删除md5命令

$sql = "SELECT id,username FROM tbl_admin where username = '".$username."' and password = '".$password."' LIMIT 1;" ;

然后,您可以从tbl_admin复制密码。 如果要在查询时保留md5命令,则必须先输入密码,然后再编码为md5字符串。

LIMIT 1

用于提高MySQL性能