首页 > 语言 > PHP > 正文

PHP mysql操作类程序

2024-09-04 11:44:09
字体:
来源:转载
供稿:网友

一个不错的PHP mysql操作类,实例代码如下:

  1. <?php 
  2. //数据库处理类 
  3. class db 
  4.     //SQL执行后的数据保存变量; 
  5.     var $db
  6.     //读取或设置当前数据的位置 
  7.     var $position=0; 
  8.     //执行SQL语句并把结果保存为db变量中; 
  9.  
  10.     function sub_sql($str
  11.     { 
  12.         global $prefix;//全局函数,表前缀 
  13.         return str_replace("#@__",$prefix,$str); 
  14.     } 
  15.     function Sql($str
  16.     { 
  17.         $str=$this->sub_sql($str); 
  18.         $result = mysql_query($str); 
  19.         $i=0; 
  20.         while($row = mysql_fetch_array($result)) 
  21.         { 
  22.             $str_array[$i]=$row
  23.             $i++; 
  24.         } 
  25.         if(emptyempty($str_array)) 
  26.         { 
  27.             $str_array=array(); 
  28.         } 
  29.         $this->db=$str_array
  30.     } 
  31.     //读取一条数据并把数据往后移一位,如果数据为空则返回为null; 
  32.     function Get_One() 
  33.     { 
  34.         $re=emptyempty($this->db[$this->position])?null:$this->db[$this->position]; 
  35.         $this->position=$re?$this->position+1:$this->position; 
  36.         return $re
  37.     } 
  38.     //判断是否数据读取到结尾了 
  39.     function Judge() 
  40.     { 
  41.         $re=emptyempty($this->db[$this->position])?true:false; 
  42.         return $re
  43.     } 
  44.     //取得db里面的个数 
  45.     function Get_Num() 
  46.     { 
  47.         return count($this->db); 
  48.     } 
  49.     //更新数据库里面的数据,$t为表名,$v格式为数组格式,上标为字段名,下标为数据;$w为条件上标为字段名下标为数据,$p为条件0为等号,1为大于,-1为小于; 
  50.     function Set_Updata($t,$v,$w,$p=0) 
  51.     { 
  52.         $this->Sql($t); 
  53.         $v_str=""
  54.         $w_str=""
  55.         $f=""
  56.         foreach($v as $key=>$vaule
  57.         { 
  58.             if(!is_numeric($key)) 
  59.             { 
  60.                 if(emptyempty($v_str)) 
  61.                 { 
  62.                     $v_str=htmlspecialchars($key)."='".htmlspecialchars($vaule)."'"
  63.                 }else 
  64.                 { 
  65.                     $v_str=$v_str.",".htmlspecialchars($key)."='".htmlspecialchars($vaule)."'"
  66.                 } 
  67.             } 
  68.         } 
  69.         switch($p
  70.         { 
  71.             case 0: 
  72.                 $f="="
  73.                 break
  74.             case 1: 
  75.                 $f=">"
  76.                 break
  77.             case -1: 
  78.                 $f="<"
  79.                 break
  80.         } 
  81.         if(!emptyempty($f)) 
  82.         { 
  83.             foreach($w as $key=>$vaule
  84.             { 
  85.                 if(!is_numeric($key)) 
  86.                 { 
  87.                     if(emptyempty($v_str)) 
  88.                     { 
  89.                         $w_str=htmlspecialchars($key).$f.htmlspecialchars($vaule)."'"
  90.                     }else 
  91.                     { 
  92.                         $w_str=$w_str.",".htmlspecialchars($key).$f.htmlspecialchars($vaule)."'"
  93.                     } 
  94.                 } 
  95.             } 
  96.         } 
  97.         $sql="UPDATE ".$t." SET ".$v_str." where ".$w_str
  98.         return $result = mysql_query($sql); 
  99.     } 
  100.     //删除一数据$w为条件上标为字段名下标为数据,$p为条件0为等号,1为大于,-1为小于; 
  101.     function Set_Del($t,$w,$p=0) 
  102.     { 
  103.         $this->sub_sql($t); 
  104.         $w_str=""
  105.         $f=""
  106.         switch($p
  107.         { 
  108.             case 0: 
  109.                 $f="="
  110.                 break
  111.             case 1: 
  112.                 $f=">"
  113.                 break
  114.             case -1: 
  115.                 $f="<"
  116.                 break
  117.         } 
  118.         if(!emptyempty($f)) 
  119.         { 
  120.             foreach($w as $key=>$vaule
  121.             { 
  122.                 if(!is_numeric($key)) 
  123.                 { 
  124.                     if(emptyempty($v_str)) 
  125.                     { 
  126.                         $w_str=htmlspecialchars($key).$f.htmlspecialchars($vaule)."'"
  127.                     }else 
  128.                     { 
  129.                         $w_str=$w_str.",".htmlspecialchars($key).$f.htmlspecialchars($vaule)."'"
  130.                     } 
  131.                 } 
  132.             } 
  133.         } 
  134.         $str="DELETE FROM ".$t." WHERE ".$w_str
  135.         return $result = mysql_query($str); 
  136.     } 
  137.     function Add($t,$v
  138.     { 
  139.         $this->sub_sql($t); 
  140.         $k_str=""
  141.         $v_str=""
  142.         foreach($v as $key=>$vaule
  143.         { 
  144.             if(!is_numeric($key)){ 
  145.                 if(emptyempty($k_str)) 
  146.                 { 
  147.                     $k_str=htmlspecialchars($key); 
  148.                     $v_str="'".htmlspecialchars($vaule)."'"
  149.                 }else 
  150.                 { 
  151.                     $k_str=$k_str.",".htmlspecialchars($key); 
  152.                     $v_str=$v_str.","."'".htmlspecialchars($vaule)."'"
  153.                 }//开源代码Vevb.com 
  154.             } 
  155.         } 
  156.         $str="INSERT INTO ".$t."(".$k_str.")"."value(".$v_str.")"
  157.         return $result = mysql_query($str); 
  158.     } 
  159. ?> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表