那么当我尝试验证登录用户名和密码时,我是否想尝试使用这些登录信息连接到数据库?还是使用 root/administrator/super-user 用户名和密码?
我听说做后者可能会导致安全漏洞,但我不确定如何验证登录信息,除非 mysqli_connect 在由于无效的用户名/密码字段而无法建立数据库连接时提供错误代码......
您应该使用您在数据库管理系统中配置数据库访问、使用CREATE USER
和命令的任何用户名和密码。GRANT
每个应用程序用户不太可能在数据库系统中也有自己的帐户。您的数据库管理员应该能够告诉您应用程序的适当用户和密码。(如果您是 DBA,我认为您需要振作起来……)
不要使用 mysqli_connect,使用 PDO 连接来连接到您的数据库并将其存储在带有 htaccess 文件的文件夹中,该文件阻止任何人访问它。像下面这样的东西应该这样做:
<?php
try {
$pdo = new PDO('mysql:host=188.121.44.140;dbname=yourdatabasename', 'yourdatabasename', 'yourpassword');
} catch (PDOException $e) {
exit('Database error.');
}
?>