首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql_connect始终允许访问

问mysql_connect始终允许访问
EN

Stack Overflow用户
提问于 2012-08-23 13:12:03
回答 3查看 724关注 0票数 0

我正在尝试使用使用XAMPP设置的本地测试服务器连接到在我的本地计算机上运行的mySQL数据库。我只是使用未分配密码的root帐户。我试过了,如下所示,一切似乎都很好。我得到了回声,说我已经成功连接了。然后,我尝试通过在中输入主机、用户名或密码来强制执行错误,但它仍然回显“连接成功”。

这是我用来连接的代码:

代码语言:javascript
复制
<?php
$db_host = "localhost";
$db_username = "root";
$db_password = "";

$myConn = mysql_connect($db_host, $db_username, $db_password) or die('Connection error: '.mysql_error());
echo 'connection successful';
?>

我想知道是我还是我正在使用的apache/mySQL的安装导致了这样的荒谬。

EN

回答 3

Stack Overflow用户

发布于 2012-08-23 13:16:48

你的安装肯定出了什么问题:

代码语言:javascript
复制
marc@panic:~$ php -a
php > $x = mysql_connect('bleargh', 'foo', 'bar') or die(mysql_error());
PHP Warning:  mysql_connect(): Unknown MySQL server host 'bleargh' (2) in php shell code on line 1
Unknown MySQL server host 'bleargh' (2)marc@panic:~$ 

我所能想到的就是你已经有了一个DNS服务器,它为所有查询返回一个有效的地址,导致解析所有的主机名。

票数 0
EN

Stack Overflow用户

发布于 2012-08-23 13:17:14

它将始终回显'connection successful',因为您没有检查连接的状态。

代码语言:javascript
复制
if (!$myConn) {
   echo 'Sorry, there was an error '.mysql_error();
} else {
   echo 'connection successful';
}

根据您执行代码的方式,您可能会遇到以下情况:

如果使用相同的参数再次调用mysql_connect(),则不会建立新的链接,而是返回已打开的链接的链接标识符。new_link参数可修改此行为,并使mysql_connect()始终打开新链接,即使以前使用相同的参数调用了mysql_connect()也是如此。在SQL安全模式下,此参数被忽略。

因此,要么进行显式检查,要么:

$myConn = mysql_connect($db_host, $db_username, $db_password, true) or die('Connection error: '.mysql_error());

票数 0
EN

Stack Overflow用户

发布于 2012-08-23 13:19:18

试试这个

代码语言:javascript
复制
$db_host = "localhost";
$db_username = "root";
$db_password = "";
$con = mysql_connect($db_host,$db_username,$db_passwd);
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }
else
  echo 'connection successful';
  mysql_close($con);
?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12085090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档