PHP使用mysql“u select”db:receiving;不是有效的MySQL链接资源“;错误

PHP使用mysql“u select”db:receiving;不是有效的MySQL链接资源“;错误,php,Php,下面是skinny-我可以很好地连接到我的数据库,但是当我尝试访问数据库中的表时,我总是遇到以下错误代码: Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /var/www/clients/client11/web31/web/update.php on line 11 下面是我的update.php代码 <?php $db_name = "X"; $db_pass

下面是skinny-我可以很好地连接到我的数据库,但是当我尝试访问数据库中的表时,我总是遇到以下错误代码:

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /var/www/clients/client11/web31/web/update.php on line 11 
下面是我的update.php代码

<?php
$db_name = "X";
$db_pass = "X";
$db_user = "X";
$db_host = "localhost";

$con = mysql_connect($db_host,$db_user,$db_pass) || die(mysql_error());


$select = mysql_select_db('gold_market',$con) || die(mysql_error()); 

?>

救命啊。求你了

我使用
或die()
而不是
| die()

我不知道这是否有什么不同,但值得一试。

看起来这种联系实际上并没有建立起来。您应该检查mysql_connect()的结果。使用更详细一点的代码可能更容易。 PHP手册有一个很好的例子:

试试这个

   <?php
    $db_name = "X";
    $db_pass = "X";
    $db_user = "X";
    $db_host = "localhost";

    $con = mysql_connect($db_host,$db_user,$db_pass);
    if (!$con) { 
            die('Could not connect: ' . mysql_error());
           }     
    $select = mysql_select_db('gold_market',$con) or die(mysql_error()); 

    ?>

对我来说,这似乎是mysql\u select\u db语法。你有没有试过这样的方法:

$con = mysql_connect($db_host, $db_user, $db_pass);
if (!$con) {
    die('Not connected : ' . mysql_error());
}

$select = mysql_select_db('gold_market', $con);
if (!$select) {
    die ('Table unavailable : ' . mysql_error());
}

古怪的但是试试看:var_dump($con);我知道,只是不知道使用“或”或“| |”是否有区别。我不这么认为。尽管我看到的所有例子都使用或。可能或早于| |。感谢您的输入。与数据库的连接很好,在发布之前我使用了更详细的代码。然而,我确实实现了更详细的代码,现在收到了这个错误:用户'c11tgm'@'localhost'成功连接到数据库'gold_market'的访问被拒绝…就我而言,我拥有正确的权限-我甚至以该用户的身份登录到phpmyadmin。@nanewk:有时用户的主机部分被忽略了。确保c11tgm的主机是localhost。另一个原因可能是您的数据库位于另一台主机上。它是同一台机器吗?我可以连接到phpMyAdmin并使用相同的登录信息运行查询。@nanewk:仅仅因为你可以连接,并不意味着它是同一台主机。您是否100%确定您的http服务器和mysql服务器位于同一台计算机上,或者可以通过相同的ip地址/域名访问?表不可用:用户'c11tgm'@'localhost'对数据库'gold_market'@eva611的访问被拒绝,仍然应该尝试var_dump($con)是。正如每个人所建议的,我们应该绝对检查值。我只是简单地建议了另一种精确定位错误的方法。我在取消注释后得到了这个结果:类型为(mysql链接)的资源(2)已连接成功拒绝用户'c11tgm'@'localhost'访问数据库'gold_market'拒绝用户'c11tgm'@'localhost'访问数据库'gold_market'我假设主机是localhost,因为我可以连接到数据库而不会出现任何问题。我的证件很好。我已登录到phpMyAdmin,可以使用相同的用户/登录名在phpMyAdmin内运行查询。
$con = mysql_connect($db_host, $db_user, $db_pass);
if (!$con) {
    die('Not connected : ' . mysql_error());
}

$select = mysql_select_db('gold_market', $con);
if (!$select) {
    die ('Table unavailable : ' . mysql_error());
}