表单验证过滤检测类标准版
时间:2009-03-04
来源:互联网
<?php
/*-----------------------------------------------------------------------------------------------#
# 表单验证过滤检测类
# 铭感词过滤之词库
# $badkey ="王八蛋|去死";
# 客户端调用
# $p = new post_get();
# echo ($_POST&& is_array($post_data = $p->_post_get($array,$type="")))?
# implode(",",$post_data):$post_data;
# 提交表单:(返回提示ID 加J
# <dt>中文:</dt><dd><input name="Name" value="<?=$_POST['Name']?>"><u id="JName"></u></dd>
#-----------------------------------------------------------------------------------------------*/
class post_get{
private $array; #提交表单检测字段和检测要求
# $type; 缺省为更新 或$type ="Into";
public function _post_get($array,$type=""){
if(!$array) die(" Error!! ");
foreach ($array as $v)
{
$KK = $this->ck_split($v);
$KKarray = split("_", $KK);
if(preg_match("/Yes|No/is",$KKarray[1]))
{
$escape_filter = ($KKarray[2])? 'ck_'.$KKarray[2]:"";#需要转义和过滤
$data = ($escape_filter)? $this->$escape_filter($_POST[$KKarray[0]]):$_POST[$KKarray[0]]; #输出合法数据
if($data)
{
if(is_array($data))$data = implode(",",$data);
$Into_data .=",'$data'";
$Into_Field.=",`$KKarray[0]`";
$Updat_array[] ="`$KKarray[0]` = '$data'";
}
}
else $error .= ($KK)? "[".$KK."],":"";
}
$_data=(!$type)? $Updat_array:array("$Into_Field","$Into_data");
return (!$error)? $_data:$this->ck_script($error); # 数组为合法表单验证结果,字符串为错误信息提示
}
public function ck_split($str){
$strarray = explode(",",$str);
foreach ($strarray as $i=> $var)
if(0 ===$i)
$name = trim($var);
elseif(1===$i)
{
if(eregi("No",trim($var))&&!$_POST[$name])break; #缺省忽略,否则...
else $_type = (trim($var))? $name.'_'.trim($var):""; #检测后动作
}
elseif(2===$i)
{
$error = trim($var);
if(!$_POST[$name])
{
$_error = $error;
break;
}
}
else # 检测部分
{
if(!trim($var))break;
if(is_array($_POST[$name]))
{
foreach ($_POST[$name] as $_var)
{
$_error= ($this->ck_open($_var,trim($var)))?"":$error;
if($_error)break;
}
}
else
{
$_error= ($this->ck_open($_POST[$name],trim($var)))?"":$error;
if($_error)break;
}
}
return ($_error)? "\"".$name."\",\"".$_error."\"":$_type;
}
# 窗口js提示
public function ck_script($str){
$str= trim($str,",");
$str = "
<script>
var str = new Array( $str );
for (i=0; i < str.length; i++)
{
document.getElementById('J'+str[0]+'').innerHTML= str[1];
}
</script>
";
return $str;
}
# 类型判断
public function ck_detected($str){
return (eregi("^[a-zA-Z]*$",$str))? 'ck_'.$str:'ck_Length';
}
# 函数调用
public function ck_open($string,$str){
$functi = $this->ck_detected($str);
return ($this->$functi($string,$str))? true:false;
}
#-------------------------------------以下为检测函数
# 长度
public function ck_Length($string,$str){
$len = split('-',trim($str));
return (strlen($string) > ($len[0]-1) && strlen($string) < ($len[1]+1))? true:false;
}
# 价格
public function ck_money($str){
return preg_match("/^(-|\+)?\d+(\.\d+)?$/",$str);
}
# 邮件
public function ck_email($str){
return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str);
}
# 网址
public function ck_url($str){
return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"])*$/", $str);
}
# 数字型
public function ck_num($str){
return is_numeric($str);
}
# 中文
public function ck_cn($str){
return preg_match("/^[\x7f-\xff]+$/", $str);
}
# 字母
public function ck_en($str){
return preg_match("/^[A-Za-z]+$/", $str);
}
# 数字字母混合
public function ck_numen($str){
return preg_match("/^([a-zA-Z0-9_-])+$/",$str);
}
# 电话号码
public function ck_tel($str){
return ereg("^[+]?[0-9]+([xX-][0-9]+)*$", $str);
}
# 敏感词
public function ck_key($str){
Global $badkey;
return (!preg_match("/$badkey/i",$str));
}
#-----------------------------------------------------输出
# 字符替换
public function ck_filter($str){
$str=(is_array($str))? implode(",",$str):$str;
$str=HTMLSpecialChars($str); //将特殊字元转成 HTML 格式。
$str=nl2br($str); //将回车替换为<br>
$str=str_replace(array(" ",'<? '),array(" ",'< ?'),$str); //替换空格替换为
return $str;
}
# MD5加密
public function ck_md($str){
return MD5($str);
}
# 转义
public function ck_escape($str){
return (is_array($str))? implode(",",$str):$str;
}
# 有条件注销(数字)
public function ck_cancel($str){
return (!is_numeric($str))? $str:"";
}
# 无条件注销(数字)
public function ck_delete(){
return null;
}
}
<?php
/*------------------------------------------------------------------------------------------
# 表单提交检测
# www.biz-m.com
# 范例:
# 表单检测格式
# 字段名,检测要求_,错误提示,检测1,....."
# 检测要求:
# 缺省忽略 No
# 必填检测, Yes
# 转义输出 _escape
# 过滤输出 _filter
# 注销无输出 _cancel (为数字时被注销)
# 注销无输出 _nooutput (无条件注销)
# 加密输出 _md5
# 输出 类型 Into Update
# 数字类 num 全中文 cn 英文字母 en 金额 money 网址 url 邮箱 email 电话 tel
# 组合(密码类) pass 字节限制 0-99999999 数字字母 numen 铭感词检测 key
# $array = array("Name,Yes,全中文6-20,cn,7-20");
#-------------------------------------------------------------------------------------------*/
#表单
$infoarray = array(
"webtitle,No,保持在中文30英文60字内,2-60",
"title,Yes,必填项目!,",
"standard,No,字数限制在40字节内,2-40",
"number,No,字数限制在40字节内,2-40",
"miaos,No,字数限制在150字节内,1-200",
"text,No,使用了铭感词,key",
"price,No,请使用标准格式:00.00,money",
"priceyh,No,请使用标准格式:00.00,money",
"sortp,No,请使用数字标准格式001,num",
"img,No_cancel,图片,",
"time,No"
);
?>
/*-----------------------------------------------------------------------------------------------#
# 表单验证过滤检测类
# 铭感词过滤之词库
# $badkey ="王八蛋|去死";
# 客户端调用
# $p = new post_get();
# echo ($_POST&& is_array($post_data = $p->_post_get($array,$type="")))?
# implode(",",$post_data):$post_data;
# 提交表单:(返回提示ID 加J
# <dt>中文:</dt><dd><input name="Name" value="<?=$_POST['Name']?>"><u id="JName"></u></dd>
#-----------------------------------------------------------------------------------------------*/
class post_get{
private $array; #提交表单检测字段和检测要求
# $type; 缺省为更新 或$type ="Into";
public function _post_get($array,$type=""){
if(!$array) die(" Error!! ");
foreach ($array as $v)
{
$KK = $this->ck_split($v);
$KKarray = split("_", $KK);
if(preg_match("/Yes|No/is",$KKarray[1]))
{
$escape_filter = ($KKarray[2])? 'ck_'.$KKarray[2]:"";#需要转义和过滤
$data = ($escape_filter)? $this->$escape_filter($_POST[$KKarray[0]]):$_POST[$KKarray[0]]; #输出合法数据
if($data)
{
if(is_array($data))$data = implode(",",$data);
$Into_data .=",'$data'";
$Into_Field.=",`$KKarray[0]`";
$Updat_array[] ="`$KKarray[0]` = '$data'";
}
}
else $error .= ($KK)? "[".$KK."],":"";
}
$_data=(!$type)? $Updat_array:array("$Into_Field","$Into_data");
return (!$error)? $_data:$this->ck_script($error); # 数组为合法表单验证结果,字符串为错误信息提示
}
public function ck_split($str){
$strarray = explode(",",$str);
foreach ($strarray as $i=> $var)
if(0 ===$i)
$name = trim($var);
elseif(1===$i)
{
if(eregi("No",trim($var))&&!$_POST[$name])break; #缺省忽略,否则...
else $_type = (trim($var))? $name.'_'.trim($var):""; #检测后动作
}
elseif(2===$i)
{
$error = trim($var);
if(!$_POST[$name])
{
$_error = $error;
break;
}
}
else # 检测部分
{
if(!trim($var))break;
if(is_array($_POST[$name]))
{
foreach ($_POST[$name] as $_var)
{
$_error= ($this->ck_open($_var,trim($var)))?"":$error;
if($_error)break;
}
}
else
{
$_error= ($this->ck_open($_POST[$name],trim($var)))?"":$error;
if($_error)break;
}
}
return ($_error)? "\"".$name."\",\"".$_error."\"":$_type;
}
# 窗口js提示
public function ck_script($str){
$str= trim($str,",");
$str = "
<script>
var str = new Array( $str );
for (i=0; i < str.length; i++)
{
document.getElementById('J'+str[0]+'').innerHTML= str[1];
}
</script>
";
return $str;
}
# 类型判断
public function ck_detected($str){
return (eregi("^[a-zA-Z]*$",$str))? 'ck_'.$str:'ck_Length';
}
# 函数调用
public function ck_open($string,$str){
$functi = $this->ck_detected($str);
return ($this->$functi($string,$str))? true:false;
}
#-------------------------------------以下为检测函数
# 长度
public function ck_Length($string,$str){
$len = split('-',trim($str));
return (strlen($string) > ($len[0]-1) && strlen($string) < ($len[1]+1))? true:false;
}
# 价格
public function ck_money($str){
return preg_match("/^(-|\+)?\d+(\.\d+)?$/",$str);
}
# 邮件
public function ck_email($str){
return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str);
}
# 网址
public function ck_url($str){
return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"])*$/", $str);
}
# 数字型
public function ck_num($str){
return is_numeric($str);
}
# 中文
public function ck_cn($str){
return preg_match("/^[\x7f-\xff]+$/", $str);
}
# 字母
public function ck_en($str){
return preg_match("/^[A-Za-z]+$/", $str);
}
# 数字字母混合
public function ck_numen($str){
return preg_match("/^([a-zA-Z0-9_-])+$/",$str);
}
# 电话号码
public function ck_tel($str){
return ereg("^[+]?[0-9]+([xX-][0-9]+)*$", $str);
}
# 敏感词
public function ck_key($str){
Global $badkey;
return (!preg_match("/$badkey/i",$str));
}
#-----------------------------------------------------输出
# 字符替换
public function ck_filter($str){
$str=(is_array($str))? implode(",",$str):$str;
$str=HTMLSpecialChars($str); //将特殊字元转成 HTML 格式。
$str=nl2br($str); //将回车替换为<br>
$str=str_replace(array(" ",'<? '),array(" ",'< ?'),$str); //替换空格替换为
return $str;
}
# MD5加密
public function ck_md($str){
return MD5($str);
}
# 转义
public function ck_escape($str){
return (is_array($str))? implode(",",$str):$str;
}
# 有条件注销(数字)
public function ck_cancel($str){
return (!is_numeric($str))? $str:"";
}
# 无条件注销(数字)
public function ck_delete(){
return null;
}
}
<?php
/*------------------------------------------------------------------------------------------
# 表单提交检测
# www.biz-m.com
# 范例:
# 表单检测格式
# 字段名,检测要求_,错误提示,检测1,....."
# 检测要求:
# 缺省忽略 No
# 必填检测, Yes
# 转义输出 _escape
# 过滤输出 _filter
# 注销无输出 _cancel (为数字时被注销)
# 注销无输出 _nooutput (无条件注销)
# 加密输出 _md5
# 输出 类型 Into Update
# 数字类 num 全中文 cn 英文字母 en 金额 money 网址 url 邮箱 email 电话 tel
# 组合(密码类) pass 字节限制 0-99999999 数字字母 numen 铭感词检测 key
# $array = array("Name,Yes,全中文6-20,cn,7-20");
#-------------------------------------------------------------------------------------------*/
#表单
$infoarray = array(
"webtitle,No,保持在中文30英文60字内,2-60",
"title,Yes,必填项目!,",
"standard,No,字数限制在40字节内,2-40",
"number,No,字数限制在40字节内,2-40",
"miaos,No,字数限制在150字节内,1-200",
"text,No,使用了铭感词,key",
"price,No,请使用标准格式:00.00,money",
"priceyh,No,请使用标准格式:00.00,money",
"sortp,No,请使用数字标准格式001,num",
"img,No_cancel,图片,",
"time,No"
);
?>
作者: cyhchenz 发布时间: 2009-03-04


作者: sanfe 发布时间: 2009-03-04
[php]
<?php
/*-----------------------------------------------------------------------------------------------#
# 表单验证过滤检测类
# 铭感词过滤之词库
# $badkey ="王八蛋|去死";
# 客户端调用
# $p = new post_get();
# echo ($_POST&& is_array($post_data = $p->_post_get($array,$type="")))?
# implode(",",$post_data):$post_data;
# 提交表单:(返回提示ID 加J
# <dt>中文:</dt><dd><input name="Name" value="<?=$_POST['Name']?>"><u id="JName"></u></dd>
#-----------------------------------------------------------------------------------------------*/
class post_get{
private $array; #提交表单检测字段和检测要求
# $type; 缺省为更新 或$type ="Into";
public function _post_get($array,$type=""){
if(!$array) die(" Error!! ");
foreach ($array as $v)
{
$KK = $this->ck_split($v);
$KKarray = split("_", $KK);
if(preg_match("/Yes|No/is",$KKarray[1]))
{
$escape_filter = ($KKarray[2])? 'ck_'.$KKarray[2]:"";#需要转义和过滤
$data = ($escape_filter)? $this->$escape_filter($_POST[$KKarray[0]]):$_POST[$KKarray[0]]; #输出合法数据
if($data)
{
if(is_array($data))$data = implode(",",$data);
$Into_data .=",'$data'";
$Into_Field.=",`$KKarray[0]`";
$Updat_array[] ="`$KKarray[0]` = '$data'";
}
}
else $error .= ($KK)? "[".$KK."],":"";
}
$_data=(!$type)? $Updat_array:array("$Into_Field","$Into_data");
return (!$error)? $_data:$this->ck_script($error); # 数组为合法表单验证结果,字符串为错误信息提示
}
public function ck_split($str){
$strarray = explode(",",$str);
foreach ($strarray as $i=> $var)
if(0 ===$i)
$name = trim($var);
elseif(1===$i)
{
if(eregi("No",trim($var))&&!$_POST[$name])break; #缺省忽略,否则...
else $_type = (trim($var))? $name.'_'.trim($var):""; #检测后动作
}
elseif(2===$i)
{
$error = trim($var);
if(!$_POST[$name])
{
$_error = $error;
break;
}
}
else # 检测部分
{
if(!trim($var))break;
if(is_array($_POST[$name]))
{
foreach ($_POST[$name] as $_var)
{
$_error= ($this->ck_open($_var,trim($var)))?"":$error;
if($_error)break;
}
}
else
{
$_error= ($this->ck_open($_POST[$name],trim($var)))?"":$error;
if($_error)break;
}
}
return ($_error)? "\"".$name."\",\"".$_error."\"":$_type;
}
# 窗口js提示
public function ck_script($str){
$str= trim($str,",");
$str = "
<script>
var str = new Array( $str );
for (i=0; i < str.length; i++)
{
document.getElementById('J'+str[0]+'').innerHTML= str[1];
}
</script>
";
return $str;
}
# 类型判断
public function ck_detected($str){
return (eregi("^[a-zA-Z]*$",$str))? 'ck_'.$str:'ck_Length';
}
# 函数调用
public function ck_open($string,$str){
$functi = $this->ck_detected($str);
return ($this->$functi($string,$str))? true:false;
}
#-------------------------------------以下为检测函数
# 长度
public function ck_Length($string,$str){
$len = split('-',trim($str));
return (strlen($string) > ($len[0]-1) && strlen($string) < ($len[1]+1))? true:false;
}
# 价格
public function ck_money($str){
return preg_match("/^(-|\+)?\d+(\.\d+)?$/",$str);
}
# 邮件
public function ck_email($str){
return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str);
}
# 网址
public function ck_url($str){
return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"])*$/", $str);
}
# 数字型
public function ck_num($str){
return is_numeric($str);
}
# 中文
public function ck_cn($str){
return preg_match("/^[\x7f-\xff]+$/", $str);
}
# 字母
public function ck_en($str){
return preg_match("/^[A-Za-z]+$/", $str);
}
# 数字字母混合
public function ck_numen($str){
return preg_match("/^([a-zA-Z0-9_-])+$/",$str);
}
# 电话号码
public function ck_tel($str){
return ereg("^[+]?[0-9]+([xX-][0-9]+)*$", $str);
}
# 敏感词
public function ck_key($str){
Global $badkey;
return (!preg_match("/$badkey/i",$str));
}
#-----------------------------------------------------输出
# 字符替换
public function ck_filter($str){
$str=(is_array($str))? implode(",",$str):$str;
$str=HTMLSpecialChars($str); //将特殊字元转成 HTML 格式。
$str=nl2br($str); //将回车替换为<br>
$str=str_replace(array(" ",'<? '),array(" ",'< ?'),$str); //替换空格替换为
return $str;
}
# MD5加密
public function ck_md($str){
return MD5($str);
}
# 转义
public function ck_escape($str){
return (is_array($str))? implode(",",$str):$str;
}
# 有条件注销(数字)
public function ck_cancel($str){
return (!is_numeric($str))? $str:"";
}
# 无条件注销(数字)
public function ck_delete(){
return null;
}
}
<?php
/*------------------------------------------------------------------------------------------
# 表单提交检测
# www.biz-m.com
# 范例:
# 表单检测格式
# 字段名,检测要求_,错误提示,检测1,....."
# 检测要求:
# 缺省忽略 No
# 必填检测, Yes
# 转义输出 _escape
# 过滤输出 _filter
# 注销无输出 _cancel (为数字时被注销)
# 注销无输出 _nooutput (无条件注销)
# 加密输出 _md5
# 输出 类型 Into Update
# 数字类 num 全中文 cn 英文字母 en 金额 money 网址 url 邮箱 email 电话 tel
# 组合(密码类) pass 字节限制 0-99999999 数字字母 numen 铭感词检测 key
# $array = array("Name,Yes,全中文6-20,cn,7-20");
#-------------------------------------------------------------------------------------------*/
#表单
$infoarray = array(
"webtitle,No,保持在中文30英文60字内,2-60",
"title,Yes,必填项目!,",
"standard,No,字数限制在40字节内,2-40",
"number,No,字数限制在40字节内,2-40",
"miaos,No,字数限制在150字节内,1-200",
"text,No,使用了铭感词,key",
"price,No,请使用标准格式:00.00,money",
"priceyh,No,请使用标准格式:00.00,money",
"sortp,No,请使用数字标准格式001,num",
"img,No_cancel,图片,",
"time,No"
);
?>
[/php]
<?php
/*-----------------------------------------------------------------------------------------------#
# 表单验证过滤检测类
# 铭感词过滤之词库
# $badkey ="王八蛋|去死";
# 客户端调用
# $p = new post_get();
# echo ($_POST&& is_array($post_data = $p->_post_get($array,$type="")))?
# implode(",",$post_data):$post_data;
# 提交表单:(返回提示ID 加J
# <dt>中文:</dt><dd><input name="Name" value="<?=$_POST['Name']?>"><u id="JName"></u></dd>
#-----------------------------------------------------------------------------------------------*/
class post_get{
private $array; #提交表单检测字段和检测要求
# $type; 缺省为更新 或$type ="Into";
public function _post_get($array,$type=""){
if(!$array) die(" Error!! ");
foreach ($array as $v)
{
$KK = $this->ck_split($v);
$KKarray = split("_", $KK);
if(preg_match("/Yes|No/is",$KKarray[1]))
{
$escape_filter = ($KKarray[2])? 'ck_'.$KKarray[2]:"";#需要转义和过滤
$data = ($escape_filter)? $this->$escape_filter($_POST[$KKarray[0]]):$_POST[$KKarray[0]]; #输出合法数据
if($data)
{
if(is_array($data))$data = implode(",",$data);
$Into_data .=",'$data'";
$Into_Field.=",`$KKarray[0]`";
$Updat_array[] ="`$KKarray[0]` = '$data'";
}
}
else $error .= ($KK)? "[".$KK."],":"";
}
$_data=(!$type)? $Updat_array:array("$Into_Field","$Into_data");
return (!$error)? $_data:$this->ck_script($error); # 数组为合法表单验证结果,字符串为错误信息提示
}
public function ck_split($str){
$strarray = explode(",",$str);
foreach ($strarray as $i=> $var)
if(0 ===$i)
$name = trim($var);
elseif(1===$i)
{
if(eregi("No",trim($var))&&!$_POST[$name])break; #缺省忽略,否则...
else $_type = (trim($var))? $name.'_'.trim($var):""; #检测后动作
}
elseif(2===$i)
{
$error = trim($var);
if(!$_POST[$name])
{
$_error = $error;
break;
}
}
else # 检测部分
{
if(!trim($var))break;
if(is_array($_POST[$name]))
{
foreach ($_POST[$name] as $_var)
{
$_error= ($this->ck_open($_var,trim($var)))?"":$error;
if($_error)break;
}
}
else
{
$_error= ($this->ck_open($_POST[$name],trim($var)))?"":$error;
if($_error)break;
}
}
return ($_error)? "\"".$name."\",\"".$_error."\"":$_type;
}
# 窗口js提示
public function ck_script($str){
$str= trim($str,",");
$str = "
<script>
var str = new Array( $str );
for (i=0; i < str.length; i++)
{
document.getElementById('J'+str[0]+'').innerHTML= str[1];
}
</script>
";
return $str;
}
# 类型判断
public function ck_detected($str){
return (eregi("^[a-zA-Z]*$",$str))? 'ck_'.$str:'ck_Length';
}
# 函数调用
public function ck_open($string,$str){
$functi = $this->ck_detected($str);
return ($this->$functi($string,$str))? true:false;
}
#-------------------------------------以下为检测函数
# 长度
public function ck_Length($string,$str){
$len = split('-',trim($str));
return (strlen($string) > ($len[0]-1) && strlen($string) < ($len[1]+1))? true:false;
}
# 价格
public function ck_money($str){
return preg_match("/^(-|\+)?\d+(\.\d+)?$/",$str);
}
# 邮件
public function ck_email($str){
return preg_match("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $str);
}
# 网址
public function ck_url($str){
return preg_match("/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"])*$/", $str);
}
# 数字型
public function ck_num($str){
return is_numeric($str);
}
# 中文
public function ck_cn($str){
return preg_match("/^[\x7f-\xff]+$/", $str);
}
# 字母
public function ck_en($str){
return preg_match("/^[A-Za-z]+$/", $str);
}
# 数字字母混合
public function ck_numen($str){
return preg_match("/^([a-zA-Z0-9_-])+$/",$str);
}
# 电话号码
public function ck_tel($str){
return ereg("^[+]?[0-9]+([xX-][0-9]+)*$", $str);
}
# 敏感词
public function ck_key($str){
Global $badkey;
return (!preg_match("/$badkey/i",$str));
}
#-----------------------------------------------------输出
# 字符替换
public function ck_filter($str){
$str=(is_array($str))? implode(",",$str):$str;
$str=HTMLSpecialChars($str); //将特殊字元转成 HTML 格式。
$str=nl2br($str); //将回车替换为<br>
$str=str_replace(array(" ",'<? '),array(" ",'< ?'),$str); //替换空格替换为
return $str;
}
# MD5加密
public function ck_md($str){
return MD5($str);
}
# 转义
public function ck_escape($str){
return (is_array($str))? implode(",",$str):$str;
}
# 有条件注销(数字)
public function ck_cancel($str){
return (!is_numeric($str))? $str:"";
}
# 无条件注销(数字)
public function ck_delete(){
return null;
}
}
<?php
/*------------------------------------------------------------------------------------------
# 表单提交检测
# www.biz-m.com
# 范例:
# 表单检测格式
# 字段名,检测要求_,错误提示,检测1,....."
# 检测要求:
# 缺省忽略 No
# 必填检测, Yes
# 转义输出 _escape
# 过滤输出 _filter
# 注销无输出 _cancel (为数字时被注销)
# 注销无输出 _nooutput (无条件注销)
# 加密输出 _md5
# 输出 类型 Into Update
# 数字类 num 全中文 cn 英文字母 en 金额 money 网址 url 邮箱 email 电话 tel
# 组合(密码类) pass 字节限制 0-99999999 数字字母 numen 铭感词检测 key
# $array = array("Name,Yes,全中文6-20,cn,7-20");
#-------------------------------------------------------------------------------------------*/
#表单
$infoarray = array(
"webtitle,No,保持在中文30英文60字内,2-60",
"title,Yes,必填项目!,",
"standard,No,字数限制在40字节内,2-40",
"number,No,字数限制在40字节内,2-40",
"miaos,No,字数限制在150字节内,1-200",
"text,No,使用了铭感词,key",
"price,No,请使用标准格式:00.00,money",
"priceyh,No,请使用标准格式:00.00,money",
"sortp,No,请使用数字标准格式001,num",
"img,No_cancel,图片,",
"time,No"
);
?>
[/php]
作者: MrWong 发布时间: 2009-03-10
验证的东西为什么不交给js去做呢?有点浪费资源哦!
作者: 齐迹 发布时间: 2009-03-10
JS 只能够做友好验证,安全验证还的PHP去做。
作者: kth007 发布时间: 2009-03-11
很需要。
作者: jinco 发布时间: 2009-03-11
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28