Home >Backend Development >PHP Tutorial >Very useful PHP database class_PHP tutorial

Very useful PHP database class_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:46:33876browse

Copy code The code is as follows:

//Very easy to use PHP database class, three or four lines of code can handle the operation of a table, no matter how complex the table fields are.
//This type of method has been widely used in the development of large-scale website programs many times, and the effect is particularly good.
//作者:快刀浪子++ 
define("_PHP_RECORD_","exists");
class TRecord
{
var $db;
var $rc;
var $name;
var $value;
var $num;
var $buffer;   //查询结果 调用方法 $buffer[$i]["fields"];
var $seekstr;   //保存查询条件用
function TRecord($host="localhost",$user="root",$passwd="")
{global $HTTP_POST_VARS;
$this->num=0;
$this->host=$host;
$this->user=$user;
$this->passwd=$passwd;
if(($this->db=mysql_connect($host,$user,$passwd))==false)
exit("联结数据库出错!");
  while(list($this->name[$this->num],$this->value[$this->num])=each($HTTP_POST_VARS))
{$this->num++;
}
//////////////
for($i=0;$i<$this->num;$i++)
{$this->value[$i]=$this->SafeString($this->value[$i]);
}
//
}
function SafeString($message)
{$message=str_replace(" "," ",$message);
$message=str_replace("<","<",$message);
$message=str_replace(">",">",$message);
//$message=str_replace("|","|",$message);
//$message=str_replace("\"",""",$message);
//$message=nl2br($message);
return $message;
}
//////
function reset()
{$this->num=0;
$this->name=array();
   $this->value=array();
}
function add($name,$values)
{$this->name[$this->num]=$name;
   $this->value[$this->num]=$values;
$this->num++;
}
function unadd($name)
{$j=0;
for($i=0;$i<$this->num;$i++)
{if($this->name[$i]!=$name)
{$aaa[$j]=$this->name[$i];
$bbb[$j]=$this->value[$i];
$j++;
}
}
$this->name=$aaa;
$this->value=$bbb;
$this->num=$j;
}
function InsertRecord($database,$table)
{mysql_select_db($database);
if($this->num==0)
exit("没有定义变量!");
$field=implode(",",$this->name);
for($i=0;$i<$this->num;$i++)
{if(is_string($this->value[$i]))
$ls[$i]="'".$this->value[$i]."'";
 else
$ls[$i]=$this->value[$i];
     $value=implode(",",$ls);  
}
$sql=sprintf("insert into %s(%s) values(%s)",$table,$field,$value);
if(mysql_query($sql,$this->db)==false)
{echo "写数据到数据库时出错:".$sql;
exit();
}
}
function SelectRecord($database,$table) //返回记录数,结果在缓冲区中
{mysql_select_db($database);
    if($this->num==0)
$sql=sprintf("select * from %s",$table);
 else
{
for($i=0;$i<$this->num;$i++)
{if(is_string($this->value[$i]))
$ls[$i]="'".$this->value[$i]."'";
   else
$ls[$i]=$this->value[$i];
$str[$i]=sprintf("%s=%s",$this->name[$i],$ls[$i]);
}
$string=implode(" and ",$str);
$this->seekstr=$string;
$sql=sprintf("select * from %s where %s",$table,$string);
}
if(($rc=mysql_query($sql,$this->db))==false)
{echo "查询数据库时出错:".$sql;
exit();
}
$i=0;
while($this->buffer[$i]=mysql_fetch_array($rc))
{
$i++;
}
mysql_free_result($rc);
return $i;
}
function UpdateRecord($database,$table,$limitstr)
{mysql_select_db($database);
if($this->num==0)
exit("没有定义变量!");
for($i=0;$i<$this->num;$i++)
{if(is_string($this->value[$i]))
$ls[$i]="'".$this->value[$i]."'";
 else
$ls[$i]=$this->value[$i];
$upstr[$i]=$this->name[$i]."=".$ls[$i];
}
    $str=implode(",",$upstr);
$sql=sprintf("update %s set %s where %s",$table,$str,$limitstr);
if(mysql_query($sql,$this->db)==false)
{echo "修改数据时出错:".$sql;
exit();
}
}
function addtip($database,$table,$fileds,$limitstr="")
{//必须为整型字段 
mysql_select_db($database);
if($limitstr!="")
$sql=sprintf("update %s set %s=%s+1 where %s",$table,$fileds,$fileds,$limitstr);
 else
$sql=sprintf("update %s set %s=%s+1",$table,$fileds,$fileds);
if(mysql_query($sql,$this->db)==false)
{echo "修改数据时出错:".$sql;
exit();
}
}
function unaddtip($database,$table,$fileds,$limitstr="")
{
mysql_select_db($database);
if($limitstr!="")
$sql=sprintf("update %s set %s=%s-1 where %s",$table,$fileds,$fileds,$limitstr);
 else
$sql=sprintf("update %s set %s=%s-1",$table,$fileds,$fileds);
if(mysql_query($sql,$this->db)==false)
{echo "修改数据时出错:".$sql;
exit();
}
}
function isempty($var,$china)
{if(trim($var)=="")
{
$reason="没有录入“".$china."”!";
exit($reason);
}
}
function GetResult()
{return $this->buffer;
}
function close()
{
mysql_close($this->db);
}
}
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/320085.htmlTechArticle复制代码 代码如下: ? //很好用的PHP数据库类,三、四句代码搞定一个表的操作,无论这个表字段有多复杂。 //此类多次大量用在大型网站程...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn