if($DB->geterrdesc()) {
if(mysql_get_server_info() > '4.1') {
$DB->query("CREATE DATABASE $dbname DEFAULT CHARACTER SET $dbcharset");
} else {
$DB->query("CREATE DATABASE $dbname");
}
if($DB->geterrdesc()) {
$msg .= "<font color=\"#FF0000\">指定的数据库不存在, 系统也无法自动建立, 无法安装</font><br />";
$quit = TRUE;
} else {
$DB->select_db($dbname);
$msg .= "成功建立指定数据库<br />";
}
}function geterrdesc() {
return mysql_error();  
}这段代码是一个dicuzz里面数据库创建一段代码,我有点不懂,为什么geterrdesc()明明返回的是错误的信息,可是为什么要加在这判断来添加数据库呢???请教一下各位到底是啥意思呀??

解决方案 »

  1.   

    是执行mysql_error的返回值,不是返回错误信息
      

  2.   

    可是在手册里明明说是:mysql_error --  返回上一个 MySQL 操作产生的文本错误信息 
      

  3.   

    返回上一个 MySQL 函数的错误文本,如果没有出错则返回 ''(空字符串)。如果没有指定连接资源号,则使用上一个成功打开的连接从 MySQL 服务器提取错误信息。 
    返回空就是没有错误