& lt; php ?//数据库单表操作类
定义(“主机”、“localhost”);
定义(“用户”,“根”);
定义(“通过”,“”);
定义(“DBNAME”、“lamp78”);
类数据库
{
保护美元联系;//连接资源
美元受保护的表名;//表名
保护美元pk=癷d”;//主键字段名
保护$=字段数组();//当前表的字段信息
保护美元=array();//封装搜索条件属性
保护美元订单=零;//排序属性
保护限制美元=零;//分页属性(获取部分数据)
公共函数__construct(表)
{
$ this→表名=$表名;//数据库连接
$ this→链接=@mysql_connect(主机、用户通过)或死亡(“数据库连接失败!”);
mysql_set_charset (“utf8 ");
mysql_select_db (DBNAME,美元这→链接);//获取当前表的结构和主键名
$ this→getFields ();
}//私有方法,加载当前表中的所有字段信息
私有函数getFields () {
$ sql=癲esc {$ this→表名}”;
结果=美元mysql_query (sql,这美元→链接);//解析表结构信息
而($行=作用(结果)美元){
[]=$ $ this→字段行(“场”);//获取字段名//判断并获取主键名
如果(美元行“关键”==案锩贫鹊场?{
$ this→pk=$行(“场”);
}
}
美元mysql_free_result(结果);
}//封装各种条件或获取所有对应数据信息
公共选择()函数
{
$=列表数组();//拼装sql语句
$ sql=皊elect * {$ this→表名}”;//判断并封装在哪条件
如果(count ($ this→)在0){
美元的sql。=","。内爆(”和“,这→美元);
}//判断并封装顺序排序条件
如果($ this→订单){
美元的sql。="命令"。这→美元秩序;
}//判断并封装分页条件
如果($ this→限制){
美元的sql。="极限"。这→美元限制;
}//执行查询,获取数据。
结果=美元mysql_query (sql,这美元→链接);
echo $ sql;//解析结果集
而($行=作用(结果)美元){
列表[]=美元行;
}
美元mysql_free_result(结果);//释放结果集
返回列表美元;
}//获取封装条件的总数据条数
公共函数总()
{
$=列表数组();//拼装sql语句
$ sql=皊elect count(*)从{$ this→表名}”;//判断并封装在哪条件
如果(count ($ this→)在0){
美元的sql。=","。内爆(”和“,这→美元);
}//执行查询,获取数据。
结果=美元mysql_query (sql,这美元→链接);
返回mysql_result(美元)因此,0,0);
}//获取所有数据
公共函数findAll ()
{$=数组列表();//拼装sql语句
$ sql=皊elect * {$ this→表名}”;//执行查询,获取数据。
结果=美元mysql_query (sql,这美元→链接);//解析结果集
而($行=作用(结果)美元){
列表[]=美元行;
}
美元mysql_free_result(结果);//释放结果集
返回列表美元;
}/* *
*获取指定id号的单条数据信息
* @param int id获取信息的主键id值。
* @return数组返回值,找到数据则返回数组,否则返回零
*/公共函数找到($ id)
{
$ sql=皊elect * {$ this→表名},{$ this→pk}={$ id}”;//执行查询
结果=美元mysql_query (sql,这美元→链接);//判断是有信息
如果美元的结果,,mysql_num_rows(结果)美元在0){
结果返回作用(美元);
其他}{
返回null;
}
}//执行删除
公共函数删除($ id)
{
$ sql=吧境觷$ this→表名}{$ this→pk}={$ id}”;//执行删除
mysql_query (sql,这美元→链接);//返回影响行数
返回mysql_affected_rows ($ this→链接);
}//执行信息添加
公共函数插入($ data=https://www.yisu.com/zixun/array ()) {//判断参数是否有值,若没有则尝试从文章自己获取
如果(空(元数据)){
$ data=$ _POST;
}//过滤所有字段
数组$ fieldlist=();
数组$ valuelist=();
foreach(数据作为$ k=>美元v) {//判断是否是有效字段
如果(in_array ($ k, $ this ->字段)){
美元fieldlist []=$ k;
美元valuelist []=v美元;
}
}//拼装sql语句
$ sql=安迦雥$ this→表名}(“.implode (”、“fieldlist美元)。”)值(“”.implode (“”、“”, valuelist美元)。”“)”;
echo $ sql;//执行添加
mysql_query (sql,这美元→链接);//返回自增信息
返回mysql_insert_id ($ this→链接);
}//执行信息修改
公共函数更新($ data=https://www.yisu.com/zixun/array ()) {//判断参数是否有值,若没有则尝试从文章自己获取
如果(空(元数据)){
$ data=$ _POST;
}//过滤所有字段
数组$ fieldlist=();
foreach(数据作为$ k=>美元v) {//判断是否是有效字段
如果(in_array ($ k, $ this ->字段)& & $ k !=$ this -> pk) {
美元fieldlist []=" {$ k}={$ v}”;
}
}//拼装sql语句
$ sql=案聓$ this→表名}“.implode (”、“fieldlist美元)。“{$ this→pk}="。$ _POST [$ this→pk];
echo $ sql;//执行添加
mysql_query (sql,这美元→链接);//返回自增信息
返回mysql_insert_id ($ this→链接);
}//封装搜索条件方法
公共函数(元数据)
{
美元这→[]=$数据;
返回这个美元;
}//封装排序方法
公共函数顺序(元数据)
{
$ this→订单=$数据;
返回这个美元;
}//封装分页方法
公共函数极限(m, n=0美元)
{
如果(n>美元;0){
这→美元限制=$ m。”、“$ n;
其他}{
这→美元限制=$ m;
}
返回这个美元;
}
}