我的 php 代码连接到我的服务器时有多个错误


I have more than one error getting from my php code connecting to my server

错误为警告:

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_nameHostname和登录凭据(Usernamepassword)区分大小写、拼写等。

如果您有正确的credentialsdatabase_nameHostname则检查用户的权限并授予权限。

尝试

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());