PHP+mysql的问题!!
<?php
//数据库配置信息
$db_host = "localhost";
$db_user = "root";
$db_passwd = "";
$db_name = "news_db";
//允许上传图片的类型
$arrlow_img_type = array('.gif','.jpg','.bmp','.png');
//1.连接数据库服务器
$conn = @mysql_connect($db_host,$db_user,$db_passwd);
if ($conn == false){
die("无法连接数据库服务器,请与管理员联系.".mysql_error());
}
// 设置编码
mysql_query("set names utf8");
//2.选择数据库
if(!mysql_select_db($db_name)){
die("数据库不存在");
}
数据库里明明有news_db这个数据库,为什么mysql_select_db($db_name)就是找不到这个数据库,我把$db_name的值换成其服务器上的其它数据库还是提示找不到!!可是$conn = @mysql_connect($db_host,$db_user,$db_passwd);显示是连接成功的。就是找不到数据库,悲催啊,急死人了!!!
答案:1、你的localhost上是否安装有两个mysql,如果有,先把其他的关了。
2、用代码找不到,你有没有尝试用工具连接上去,是不是能看见这个库。
3、你的@mysql_connect($db_host,$db_user,$db_passwd) 前面的@去掉,看有没有报错。
4、你的root用户是否有对news_db的权限。
5、你可以尝试打印出$db_name这个变量,是不是变量重名覆盖了,已经不是news_db了。
6、mysql_select_db($db_name, $conn); 这句是不是有问题?
试试把。加油、
其他:mysql_select_db($db_name, $conn); 1、用$conn = mysql_connect($db_host,$db_user,$db_passwd)
or die("无法连接数据库服务器,请与管理员联系.".mysql_error());
看看会不会提示错误,有错误的话粘上来看看。
2、改成if(!mysql_select_db($db_name,$conn)){
die("数据库不存在".mysql_error());
} mysql_select_db的参数需要引号 你用变量可能不行吧
或者你直接先用 mysql_select_db($db_name)试下 不要用mysql_query 设置编码
上一个:PHP 字符串比较
下一个:初学PHP是否需要具备编写HTML代码?