错误为警告:
mysql_connect() [function.mysql-connect]:拒绝用户访问 'test'@'10.1.1.23' (使用密码:是) /home/a4228948/public_html/imageid.php 在第 9 行
警告:mysql_select_db():提供的参数无效 MySQL-Link 资源在/home/a4228948/public_html/imageid.php 在线 10
警告:mysql_close():提供的参数不是有效的 MySQL 链接 资源位于/home/a4228948/public_html/imageid.php第 29 行
<?PHP
error_reporting(E_ALL ^ E_DEPRECATED);
$user_name = "test";
$password = "protection";
$database = "temp";
$server = "mysql6.000webhost.com";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
$SQL = "SELECT * FROM test";
$result = mysql_query($SQL);
while ( $db_field = mysql_fetch_assoc($result) ) {
print $db_field['id'] ;
}
mysql_close($db_handle);
}
else {
print "Database NOT Found ";
mysql_close($db_handle);
}
?>
或密码错误。您检查数据库用户名和密码是否正确。和服务器值设置本地主机
此时只有第一个错误非常重要,其余的可能没问题,但是在第 9 行您将无法连接,因此无需对 DB 执行更多操作。
请仔细检查大小写是否正确等(取决于MySQL设置,数据库名称也可以区分大小写),并且没有多余的空格(复制粘贴时发生在我身上几次)。
检查数据库是否确实存在(通过 phpMyAdmin 或您的提供程序使用的任何内容)。
检查Database_name
、Hostname
和登录凭据(Username
和password
)区分大小写、拼写等。
如果您有正确的credentials
,database_name
和Hostname
则检查用户的权限并授予权限。
尝试
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%' WITH GRANT OPTION;
这就是我创建"超级用户"权限的方式(尽管我通常会指定主机)。重要提示
虽然这个答案可以解决访问问题,但使用授权选项会创建一个可以编辑其他用户权限的MySQL用户。
通过"授予选项"权限,您可以向其他用户授予或删除其他用户自己拥有的权限。
出于安全原因,您不应将这种类型的用户帐户用于公众可以访问的任何进程(即网站)。建议您创建一个仅具有数据库权限的用户,用于此类用途。
grant all privileges on mydb.* to myuser@'%' identified by 'mypasswd';
grant all privileges on mydb.* to myuser@localhost identified by 'mypasswd';
警告 2 -
改变
$db_found = mysql_select_db($database, $db_handle);
自
$db_found = mysql_select_db($database_spyware, $db_handle) || die(mysql_error());