关 键 词:
连接 一个 base // result this-dBaseLink 数据库 function
{ var $dBaseLink; //数据库连接指针
var $dBase;
function dbLink($base="") //构造函数
//$base 为选择数据库名称
{ $this->dBaseLink=@mysql_connect("host","user","password");
if(!$this->dBaseLink) die($this->dbError("1"));
if($base!="") $this->dbChange($base);
}
function dbClose() //关闭数据库连接
{ mysql_close($this->dBaseLink);
}
function dbError($n,$sql="") //输出错误信息,并退出程序
{
$dbErrorCode=array(
1 => "不能连接到数据库",
1004 => DB_ERROR_CANNOT_CREATE,
1005 => DB_ERROR_CANNOT_CREATE,
1006 => DB_ERROR_CANNOT_CREATE,
1007 => "对象已经存在,不能完成创建操作",
1008 => "不能完成删除操作",
1046 => DB_ERROR_NODBSELECTED,
1050 => DB_ERROR_ALREADY_EXISTS,
1051 => DB_ERROR_NOSUCHTABLE,
1054 => "所检索的字段不存在",
1062 => DB_ERROR_ALREADY_EXISTS,
1064 => DB_ERROR_SYNTAX,
1100 => DB_ERROR_NOT_LOCKED,
1136 => DB_ERROR_VALUE_COUNT_ON_ROW,
1146 => "所检索的数据表不存在",
1049 => "所选择的数据库不存在"
);
echo "<div style='background-color:#dddddd;color:#000000;font-size:9pt;width=400' align=center>错误 $n :".$dbErrorCode[$n]."<BR>".$sql."</div>";
}
function dbChange($base) //改变当前数据库
{
$this->dBase=$base;
@mysql_select_db($base,$this->dBaseLink);
if($msg=mysql_errno($this->dBaseLink)) die($this->dbError($msg));
}
function dbQuery($sql,$base="",$type=0) //对指定数据库进行访问
//$sql为SQL语句
//$base为访问的数据库名,如果没有则使用上次使用的
//$type为返回数组格式,0返回name=>value形式,1返回value格式
{ if($base!="" || $this->dBase!=$base) $this->dbChange($base);
$result=@mysql_query($sql,$this->dBaseLink);
if($msg=mysql_errno($this->dBaseLink)) die($this->dbError($msg,$sql));
@$num=mysql_num_rows($result);
if($num==0) $rtArray="";
else {
for($i=0;$i<$num;$i++)
$rtArray[$i]=($type==0)?mysql_fetch_array($result):mysql_fetch_row($result);
}
@mysql_free_result($result);
return $rtArray;
}
function dbCountRecords($table,$where="",$base="",$index="id") //统计表中记录的数目
//$table 操作的数据表名称
//$where 完整的where子句
//$base 操作的数据库名称
//$index 操作所使用的索引字段
{ if($base!="" || $this->dBase!=$base) $this->dbChange($base);
$result = mysql_query("select count(".$index.") as 'num' from $table ".$where,$this->dBaseLink);
@$num = mysql_result($result,0,"num");
@mysql_free_result($result);
return $num;
}
function dbIo($sql,$base="") //无返回值的SQL操作,例如insert操作,返回新插入的id,update和delete无返回值
{ if($base!="" || $this->dBase!=$base) $this->dbChange($base);
$result=@mysql_query($sql,$this->dBaseLink);
@mysql_free_result($result);
return mysql_insert_id($this->dBaseLink);
}
function dbFieldList($table,$base) //字段信息列表
{ $pt = @mysql_list_fields($base,$table);
if($msg=mysql_errno($this->dBaseLink)) die($this->dbError($msg));
$n=mysql_num_fields($pt);
for($i=0;$i<$n;$i++) {
$name = mysql_field_name($pt,$i);
$type = mysql_field_type($pt,$i);
$len = mysql_field_len($pt,$i);
$rt[$i]=array("name" => $name, //字段名称
"type" => $type, //字段类型
"len" => $len); //字段长度
}
return $rt;
}
function dbTableList($basename) //数据库basename的表信息
{
$result=mysql_list_tables($basename,$this->dBaseLink);
$rt=mysql_fetch_array($result);
@mysql_free_result($result);
return $rt;
}
}欢迎进入PHP开发资源论坛讨论。
相关文章
图文推荐
论 坛 资 源
·Zope的优点及和Apache+PHP+MySQL的比较
·PHP面向对象、类经典教程[2]
·PHP面向对象、类经典教程[1]
·用 Xdebug 修正 PHP 应用程序中的错误(5)
·用 Xdebug 修正 PHP 应用程序中的错误(4)
·用 Xdebug 修正 PHP 应用程序中的错误(3)
·用 Xdebug 修正 PHP 应用程序中的错误(2)
·用 Xdebug 修正 PHP 应用程序中的错误(1)
·黑防黑:黑客口述—关于Php后门的隐藏技巧
·PRADO框架TDataGrid使用教程(1)
·PHP面向对象、类经典教程[2]
·PHP面向对象、类经典教程[1]
·用 Xdebug 修正 PHP 应用程序中的错误(5)
·用 Xdebug 修正 PHP 应用程序中的错误(4)
·用 Xdebug 修正 PHP 应用程序中的错误(3)
·用 Xdebug 修正 PHP 应用程序中的错误(2)
·用 Xdebug 修正 PHP 应用程序中的错误(1)
·黑防黑:黑客口述—关于Php后门的隐藏技巧
·PRADO框架TDataGrid使用教程(1)
热门技术文档
·Zope的优点及和Apache+PHP+MySQL的比较
·Windows 下的 PHP 扩展编程
·PHP面向对象、类经典教程[2]
·PHP面向对象、类经典教程[1]
·用 Xdebug 修正 PHP 应用程序中的错误(5)
·用 Xdebug 修正 PHP 应用程序中的错误(4)
·用 Xdebug 修正 PHP 应用程序中的错误(3)
·用 Xdebug 修正 PHP 应用程序中的错误(2)
·用 Xdebug 修正 PHP 应用程序中的错误(1)
·php时间求法(二)
·Windows 下的 PHP 扩展编程
·PHP面向对象、类经典教程[2]
·PHP面向对象、类经典教程[1]
·用 Xdebug 修正 PHP 应用程序中的错误(5)
·用 Xdebug 修正 PHP 应用程序中的错误(4)
·用 Xdebug 修正 PHP 应用程序中的错误(3)
·用 Xdebug 修正 PHP 应用程序中的错误(2)
·用 Xdebug 修正 PHP 应用程序中的错误(1)
·php时间求法(二)
最新图文档
本站编辑推荐:(本站开通Delphi4PHP专区,欢迎进入论坛交流!)
- · 3分钟快速了解 Delphi for PHP 特色 (中文), PDF档
- · 购买Delphi for PHP的五大理由, PDF档
- · Delphi for PHP 使用规格介绍, PDF档
- · Delphi for PHP 問答集 (From CodeGear)
- · Delphi for PHP 产品价格表
编缉最近更新文章
网站赞助商
搜索您感兴趣的内容




