我正在尝试构建我将使用它的自定义WORDPRESS备份解决方案。
该文件将在wp-content中。
该文件名为backup.php
当我尝试通过调用http://myblog/wp-content/backup.php访问数据库时,出现以下错误:
此网站似乎未经授权尝试访问 您的数据库位于http://myblog.com。这次尝试已经成功了 停止。
PHP文件:
include ('../wp-config.php');
$con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
mysql_query('use ' . DB_NAME, $con);
$username = 'admin';
$password = 'password';
$r = mysql_query("SELECT id FROM " . $table_prefix . "users WHERE user_login = '" . $username . "' AND user_pass = md5('" . $password . "')", $con);
if (mysql_num_rows($r) > 0) {
//code for backup here
}
答案 0 :(得分:1)
创建MySQL用户帐户时,可以指定该帐户可用于连接的服务器。
肯定有'localhost'或'%'(即任何主机)的选项。也可以指定一个命名主机。
如果你没有指定一个(取决于你如何设置用户帐户),并且如果数据库与你的Wordpress网站位于不同的主机/域上,则可能是'localhost'是默认值,那么是问题的原因。
无论哪种方式,都值得检查您用于连接的数据库用户帐户(DB_USER,DB_PASSWORD等)是否有权从持有您Wordpress站点的主机/域进行连接。
我已经快速查看了phpMyAdmin下的位置,但我现在可以访问的是一个共享主机,它似乎不让我看到权限表。在phpMyAdmin主页上通常有一个'Priveliges'链接 - 按照它(并在必要时使用文档),这应该可以帮助你。