国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP mysql數據庫操作類

2024-09-04 11:44:13
字體:
來源:轉載
供稿:網友

數據庫操作類是所有程序都可以實現的一個功能,下面我來分享一個PHP mysql數據庫操作類,這個數據庫操作類的特點是對所有保存到數據庫的內容進入了過濾,可以很好的處理sql注入了,代碼如下:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汉中市| 剑川县| 龙川县| 云安县| 杭锦旗| 墨脱县| 洛宁县| 奉贤区| 万山特区| 花莲市| 汉源县| 当阳市| 徐汇区| 珠海市| 汶川县| 惠州市| 漳浦县| 繁昌县| 穆棱市| 凭祥市| 泗水县| 灵石县| 黔南| 大新县| 正镶白旗| 靖远县| 株洲市| 凌海市| 新津县| 晋中市| 伊川县| 临武县| 瑞金市| 衡阳县| 宣恩县| 古丈县| 芮城县| 盈江县| 乐清市| 石柱| 洪雅县|