这听起来很容易解决,但我已经研究了一段时间。
Database Error: Unable to connect to the database:Could not connect to MySQL
我必须制作Joomla的本地副本以进行备份和更改,因此我没有弄乱现场网站。
我通过FTP抓住了现场网站上的所有文件。是否有数据库转储。将数据库放在我的本地计算机上,将Joomla文件复制到我的服务器根目录的子文件夹中。更改了配置变量以适应PHP,Mysql,Apache的当前设置。
现在我输入了一个test.php,连接并查询了数据库。
$db = mysql_connect("localhost","root","sunshine") or die ('Unable to connect to Database!');
mysql_select_db("iweb");
$query = "SELECT * FROM jos_content LIMIT 0 , 30";
$results = mysql_query($query);
while($row = mysql_fetch_assoc($results)){
echo '<br>'.$row['title'];
}
然而,当我将相同的DB凭据放入configuration.php时,它会给出上述错误。
我一直在看.htaccess并没有找到任何东西。
任何人都知道这里发生了什么?
Joomla 1.5.4,Apache 2.2.X PHP 5.2.X在Windows XP Professional Box上。
答案 0 :(得分:1)
尝试127.0.0.1而不是localhost。它是相同的,但有时(并在我的配置中)只有IP工作正常。
答案 1 :(得分:0)
如果您仍然遇到此问题,最简单的解决方案是在您的实时服务器上安装JoomlaPack以备份所有内容。将zip文件下载到本地服务器,解压缩文件,将Web浏览器指向解压缩的文件夹,然后按照说明进行操作。如果您要在实时和本地服务器之间来回移动,这是一个必须拥有的程序。
答案 2 :(得分:0)
您不需要使用mysql_connect
手动连接到数据库,因为joomla使用自己的机制连接到数据库。您需要做的就是在 configuration.php 文件中指定数据库设置,该文件存在于joomla安装的根目录中。完成后,您可以立即运行查询,例如,这就是您所需要的:
$query = "SELECT * FROM jos_content LIMIT 0 , 30";
$results = mysql_query($query);
while($row = mysql_fetch_assoc($results)){
echo '<br>'.$row['title'];
}
然而,当我把相同的数据库 凭证进入configuration.php 它给出了上述错误。
确保:
答案 3 :(得分:0)
只需替换
“var $ dbtype ='mysql';”
带
“var $ dbtype ='mysqli';”
在全局配置中。
我认为它有效。