我正在尝试连接到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);
我一直收到错误“没有数据库选择”,即使我确定我正确拼写了数据库名称(我复制粘贴)。有谁知道为什么我的代码可能会抛出此错误?
答案 0 :(得分:1)
可能是权限问题(登录的用户可能没有数据库的读取权限):
mysql_select_db()失败,除非可以对连接的用户进行身份验证 有权使用数据库。
答案 1 :(得分:0)
以下是我在答案表单中的评论:
在or die ('Could not use DB: ' . mysql_error())
电话后执行相同的mysql_select_db()
,了解正在发生的事情。
您的评论(“拒绝访问”)表明您有权连接数据库服务器但不能使用数据库。请记住,一个数据库服务器上可以有多个数据库,每个数据库都有自己的权限方案。检查您尝试使用的数据库的权限,并确保$user_name
可以将其与$password
一起使用。