没有连接到数据库

时间:2012-01-06 22:09:15

标签: php mysql database

我正在尝试连接到php脚本中的mysql数据库。到目前为止,我的代码看起来像

//to my knowledge, this works. I was able to echo out the correct name
$name = $_POST["name"];


$server_name = "localhost"; 
$user_name = //my user name
$password = //my password
$db_name = //the db name

//it passes this error check, so I am connecting properly I am assuming 
$dbconn = mysql_connect($server_name, $user_name, $password) 
    or die ('Could not connect to database: ' . mysql_error());

mysql_select_db($db_name, $dbconn);

$query = "SELECT * 
          FROM brothers 
          WHERE name = '$name'";

//it DOES NOT make it past this one
$result = mysql_query($query)
    or die('Bad Query: ' . mysql_error());

//filter through the query as a row
$row = mysql_fetch_array($result, MYSQL_ASSOC);

//echo the result back to the user
echo $row["name"];
echo $row["major"];


//close the connection 
mysql_close($dbconn);

我一直收到错误“没有数据库选择”,即使我确定我正确拼写了数据库名称(我复制粘贴)。有谁知道为什么我的代码可能会抛出此错误?

2 个答案:

答案 0 :(得分:1)

可能是权限问题(登录的用户可能没有数据库的读取权限):

  

mysql_select_db()失败,除非可以对连接的用户进行身份验证   有权使用数据库。

答案 1 :(得分:0)

以下是我在答案表单中的评论:

or die ('Could not use DB: ' . mysql_error())电话后执行相同的mysql_select_db(),了解正在发生的事情。

您的评论(“拒绝访问”)表明您有权连接数据库服务器但不能使用数据库。请记住,一个数据库服务器上可以有多个数据库,每个数据库都有自己的权限方案。检查您尝试使用的数据库的权限,并确保$user_name可以将其与$password一起使用。