【问题标题】:PHP Database Connection FilePHP 数据库连接文件
【发布时间】:2013-05-16 14:32:58
【问题描述】:

我正在尝试创建一个数据库连接文件,以便多个页面与数据库保持恒定连接。我试图理解为什么一组代码就链接到数据库而言有效,而另一组代码则失败。请帮我理解。

这是有效的代码:

$db_connect = mysql_connect('host_name', 'user_name', 'user_password');
    if(!$db_connect){
        die('Not connected :' . mysql_error());
    }

$db_select = mysql_select_db("dispatch", $db_connect);
    if(!$db_select){
        die('No database :' . mysql_error());
    }

我能够建立到服务器的有效连接,以及选择表和运行查询。

这是失败的代码(我希望我的代码看起来像这段代码,但我不明白为什么它无法连接到服务器。):

$db_host = "host_name";
$db_user = "user_name";
$db_pass = "user_password";
$db_name = "user_table";

$db_connect = mysql_connect("$db_host", "$db_user", "$db_pass") or die ("Could not connect to MySQL");

我什至尝试过这段代码,但仍然失败:

$db_host = "host_name";
$db_user = "user_name";
$db_pass = "user_password";
$db_name = "user_table";
$db_connect = @mysql_connect("$db_host", "$db_user", "db_pass") or die ("Could not connect to MySQL");
$db_select = @mysql_select_db("$db_name") or die ("Could not connect to database");

请注意,我尝试从单引号 ( '' ) 切换到双引号 ( " " ) 无济于事。

请帮助我理解。请不要问我为什么不只使用有效的代码。我想了解为什么第二组代码不起作用。

还请注意,这只是我第二次使用 Stack Overflow,我仍在努力掌握它。谢谢。

回击我...

【问题讨论】:

标签: php mysql database database-connection


【解决方案1】:

尝试不带引号的变量:

$db_connect = mysql_connect($db_host, $db_user, $db_pass) or die ("Could not connect to MySQL");
$db_select = mysql_select_db($db_name) or die ("Could not connect to database");

【讨论】:

  • @xy,哇...这似乎奏效了。然后我添加了一个查询以从表中进行选择,它也有效。我想知道为什么必须删除引号才能使其正常工作。这会是常见的做法吗?
  • 首先添加引号是不常见的做法
  • @Anigel,我不确定这是否是“智能-@$$”响应,但我会考虑到这一点。
  • 不,这是一个严肃的评论,在这种情况下引用变量名并不常见。引用字符串只是常见的做法
【解决方案2】:

也许有人是您更改您的 phpmyadmin 服务器密码。所以请确定它是否正确。

1> 打开“phpmyadmin”。

2> 点击“权限”标签。

3> 现在查看您的服务器用户名并点击“Action”(黄色)。

4> 现在您可以更改您的密码

尝试使用新密码连接数据库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    • 2014-01-11
    相关资源
    最近更新 更多