php懒人函数 自动添加数据

时间:2022-09-17 00:00:51

代码如下:


/* 
*@自动添加数据函数 
*@$table 表名 
*@$arr 字段库 array("title",array("content",int)) 
*@ array(字段,类型) 
*@ 类型说明 
html--允许html 
unhtml-不允许html 
int --int类型 
float -- float 类型 
*/ 
//自动插入数据函数 
function autoInsert($table,$arr=array(),$method='post') 

$sql="insert into ".DB_TBLPRE."$table set "; 
$var=""; 
print_r($arr); 
if(empty($arr)) $arr=$_POST?$_POST:$_GET; 
if(empty($arr)) return false; 
$ct=count($arr)-1; 
foreach($arr as $k=> $v) 

$vtype="unhtml"; 
if(is_array($v)) 

$vtype=@$v[1]; 
$v=$v[0]; 

if($method=='post') 

$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):""; 
if(is_int($_POST[$v])) 

$_POST[$v]=intval($_POST[$v]); 
}elseif(is_float($_POST[$v])) 

$_POST[$v]=floatval($_POST[$v]); 
}elseif(is_string($_POST[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=="unhtml") 

$_POST[$v]=htmlspecialchars($_POST[$v]); 
}elseif($vtype=="int") 

$_POST[$v]=@intval($_POST[$v]); 
}elseif($vtype=='float') 

$_POST[$v]=@floatval($_POST[$v]); 


$var.= "$v = '$_POST[$v]' ".($k<$ct?",":""); 
}else 

$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):""; 
if(is_int($_GET[$v])) 

$_GET[$v]=intval($_GET[$v]); 
}elseif(is_float($_GET[$v])) 

$_GET[$v]=floatval($_GET[$v]); 
}elseif(is_string($_GET[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=='unhtml') 

$_GET[$v]=htmlspecialchars($_GET[$v]); 
}elseif($vtype=='int') 

$_GET[$v]=intval($_GET[$v]); 
}elseif($vtype=='float') 

$_GET[$v]=floatval($_GET[$v]); 


$var .="$v= '$_GET[$v]' ".($k<$ct?",":""); 


$sql.=$var; 
$this->query($sql); 
return $this->insert_id(); 

/** 
@自动更新数据函数 
*@$table 表名 
*@$arr 字段库 array("title",array("content",int)) 
*@ array(字段,类型) 
*@ 类型说明 
html--允许html 
unhtml-不允许html 
int --int类型 
float -- float 类型 
** $where 条件数组 类型同 $arr一样 
*$method 表单提交的方式 
*/ 
function autoUpdate($table,$arr=array(),$where=array(),$method='post') 

$sql="update ".DB_TBLPRE."$table set "; 
$var=$w=""; 
if(empty($arr)) $arr=$_POST?$_POST:$_GET; 
if(empty($arr)) return false; 
$ct=count($arr)-1; 
foreach($arr as $k=> $v) 

$vtype="unhtml"; 
if(is_array($v)) 

$vtype=@$v[1]; 
$v=$v[0]; 

if($method=='post') 

$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):""; 
if(is_int($_POST[$v])) 

$_POST[$v]=intval($_POST[$v]); 
}elseif(is_float($_POST[$v])) 

$_POST[$v]=floatval($_POST[$v]); 
}elseif(is_string($_POST[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=="unhtml") 

$_POST[$v]=htmlspecialchars($_POST[$v]); 
}elseif($vtype=="int") 

$_POST[$v]=@intval($_POST[$v]); 
}elseif($vtype=='float') 

$_POST[$v]=@floatval($_POST[$v]); 


$var.= "$v = '$_POST[$v]' ".($k<$ct?",":""); 
}else 

$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):""; 
if(is_int($_GET[$v])) 

$_GET[$v]=intval($_GET[$v]); 
}elseif(is_float($_GET[$v])) 

$_GET[$v]=floatval($_GET[$v]); 
}elseif(is_string($_GET[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=='unhtml') 

$_GET[$v]=htmlspecialchars($_GET[$v]); 
}elseif($vtype=='int') 

$_GET[$v]=intval($_GET[$v]); 
}elseif($vtype=='float') 

$_GET[$v]=floatval($_GET[$v]); 


$var .="$v= '$_GET[$v]' ".($k<$ct?",":""); 


$sql.=$var; 
//解析 where 
$ct=count($where)-1; 
if(!empty($where)) $w=" where "; 
foreach($where as $k=> $v) 

$vtype="unhtml"; 
if(is_array($v)) 

$vtype=@$v[1]; 
$v=$v[0]; 

if($method=='post') 

$_POST[$v]=isset($_POST[$v])?trim($_POST[$v]):""; 
if(is_int($_POST[$v])) 

$_POST[$v]=intval($_POST[$v]); 
}elseif(is_float($_POST[$v])) 

$_POST[$v]=floatval($_POST[$v]); 
}elseif(is_string($_POST[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=="unhtml") 

$_POST[$v]=htmlspecialchars($_POST[$v]); 
}elseif($vtype=="int") 

$_POST[$v]=@intval($_POST[$v]); 
}elseif($vtype=='float') 

$_POST[$v]=@floatval($_POST[$v]); 


$w.= "$v = '$_POST[$v]' ".($k<$ct?" and ":""); 
}else 

$_GET[$v]=isset($_GET[$v])?trim($_GET[$v]):""; 
if(is_int($_GET[$v])) 

$_GET[$v]=intval($_GET[$v]); 
}elseif(is_float($_GET[$v])) 

$_GET[$v]=floatval($_GET[$v]); 
}elseif(is_string($_GET[$v])) 

//等于1 为保存html 默认不保存html 
if($vtype=='unhtml') 

$_GET[$v]=htmlspecialchars($_GET[$v]); 
}elseif($vtype=='int') 

$_GET[$v]=intval($_GET[$v]); 
}elseif($vtype=='float') 

$_GET[$v]=floatval($_GET[$v]); 


$w .="$v= '$_GET[$v]' ".($k<$ct?" and ":""); 


$sql.=$w; 
$this->query($sql);