课程/PHP/后端开发
Duang~MySQLi扩展库来袭
-
-
Object_is_null
2017-11-13
- //2.2过滤用户输入的特殊字符
public static function validate_str($str){
if(mb_strlen($str,'UTF8')<1){ //以UTF8格式获取字符串的长度获取字符串长度
return false;
}
//htmlspecialchars把预定义的字符转换为HTML实体,ENT_QUOTES为编码$str内的双引号和单引号
//nl2br()在字符串中的每个新行(\n)之前插入 HTML 换行符(<br> 或 <br />)
$str=nl2br(htmlspecialchars($str,ENT_QUOTES));
return $str;
}
-
0赞 · 0采集
-
-
Object_is_null
2017-11-13
- 2.程序分析
//2.1检测用户输入的数据
public static function validate(&$arr){ //&为引用声明:&$arr
if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL))){
$errors['email']='请输入合法邮箱';
}
if(!($data['url']=filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL))){
$url='';
}
//过滤函数的回调函数,函数名必须存入名为 "options" 的关联数组中
if(!($data['content']=filter_input(INPUT_POST,'content',FILTER_CALLBACK,array('options'=>'Comment::validate_str')))){
$errors['content']='请输入合法内容';
}
//过滤标准的相应参数必须存入一个名为 "options" 的关联多维数组中。
$int_options=array(
'options'=>array( //FILTER_VALIDATE_INT对应参数
'min_range'=>1, //min_range - 规定最小整数值
'max_range'=>5 //max_range - 规定最大整数值
)
);
if(!($data['face']=filter_input(INPUT_POST,'face',FILTER_VALIDATE_INT,$int_options))){
$errors['face']='请选择合法头像';
}
if(!empty($errors)){
$arr=$errors;
return false;
}
$arr=$data;
$arr['email']=strtolower(trim($arr['email'])); //strtolower()将字符串转换成小写 trim()去掉前后空格
return true;
}
-
0赞 · 1采集
-
-
Object_is_null
2017-11-13
- 1.php5.4起支持回调函数
1).函数做回调函数,以 string 类型传递其名称。()可以使用任何内置或用户自定义函数,但不能使用语言结构(如:array(),echo,empty(),eval(),exit(),isset(),list(),print 或 unset() )函数
2).一个已实例化的对象的方法被作为数组传递,下标 0 包含该对象,下标 1 包含方法名。
3).静态类方法也可不经实例化该类的对象而传递,只要在下标 0 中包含类名而不是对象。自 PHP 5.2.3 起,也可以传递 'ClassName::methodName'。
function my_callback_function() {
echo 'hello world!';
}
class MyClass {
static function myCallbackMethod() {
echo 'Hello World!';
}
}
//函数做回调函数
call_user_func('my_callback_function');
//静态方法做为回调函数
call_user_func(array('MyClass', 'myCallbackMethod'));
call_user_func('MyClass::myCallbackMethod');
// 对象方法做回调函数
$obj = new MyClass();
call_user_func(array($obj, 'myCallbackMethod'));
filter_input()为几大过滤函数之一的:获取脚本外数据并进行字符合法化过滤函数.
filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL)
filter_input()参数说明:第一个参数表示调用的数据是外部通过POST方法传输过来,第二个参数表明从$_POST[email]中取得具体数据,第三个参数说明具体过滤标准,第四个参数为具体过滤标准的相应参数(可省略)
-
0赞 · 0采集
-
-
Gigure
2017-09-26
- 邮箱(text)过滤
图片(修改value)
-
0赞 · 0采集
-
-
用户1084380
2017-06-15
- filter_input 的使用
-
0赞 · 0采集
-
-
哎咿呦鲍鲍
2017-02-26
- 表单输入过滤下篇
//2.2过滤用户输入的特殊字符
public static function validate_str($str){
if(mb_strlen($str,'UTF8')<1){ //以UTF8格式获取字符串的长度获取字符串长度
return false;
}
//htmlspecialchars把预定义的字符转换为HTML实体,ENT_QUOTES为编码$str内的双引号和单引号
//nl2br()在字符串中的每个新行(\n)之前插入 HTML 换行符(<br> 或 <br />)
$str=nl2br(htmlspecialchars($str,ENT_QUOTES));
return $str;
}
-
0赞 · 0采集
-
-
哎咿呦鲍鲍
2017-02-26
- 表单输入过滤中篇
2.程序分析
//2.1检测用户输入的数据
public static function validate(&$arr){ //&为引用声明:&$arr
if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL))){
$errors['email']='请输入合法邮箱';
}
if(!($data['url']=filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL))){
$url='';
}
//过滤函数的回调函数,函数名必须存入名为 "options" 的关联数组中
if(!($data['content']=filter_input(INPUT_POST,'content',FILTER_CALLBACK,array('options'=>'Comment::validate_str')))){
$errors['content']='请输入合法内容';
}
//过滤标准的相应参数必须存入一个名为 "options" 的关联多维数组中。
$int_options=array(
'options'=>array( //FILTER_VALIDATE_INT对应参数
'min_range'=>1, //min_range - 规定最小整数值
'max_range'=>5 //max_range - 规定最大整数值
)
);
if(!($data['face']=filter_input(INPUT_POST,'face',FILTER_VALIDATE_INT,$int_options))){
$errors['face']='请选择合法头像';
}
if(!empty($errors)){
$arr=$errors;
return false;
}
$arr=$data;
$arr['email']=strtolower(trim($arr['email'])); //strtolower()将字符串转换成小写 trim()去掉前后空格
return true;
}
-
0赞 · 0采集
-
-
哎咿呦鲍鲍
2017-02-26
- 表单输入过滤上篇
1.php5.4起支持回调函数
1).函数做回调函数,以 string 类型传递其名称。()可以使用任何内置或用户自定义函数,但不能使用语言结构(如:array(),echo,empty(),eval(),exit(),isset(),list(),print 或 unset() )函数
2).一个已实例化的对象的方法被作为数组传递,下标 0 包含该对象,下标 1 包含方法名。
3).静态类方法也可不经实例化该类的对象而传递,只要在下标 0 中包含类名而不是对象。自 PHP 5.2.3 起,也可以传递 'ClassName::methodName'。
function my_callback_function() {
echo 'hello world!';
}
class MyClass {
static function myCallbackMethod() {
echo 'Hello World!';
}
}
//函数做回调函数
call_user_func('my_callback_function');
//静态方法做为回调函数
call_user_func(array('MyClass', 'myCallbackMethod'));
call_user_func('MyClass::myCallbackMethod');
// 对象方法做回调函数
$obj = new MyClass();
call_user_func(array($obj, 'myCallbackMethod'));
filter_input()为几大过滤函数之一的:获取脚本外数据并进行字符合法化过滤函数.
filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL)
filter_input()参数说明:第一个参数表示调用的数据是外部通过POST方法传输过来,第二个参数表明从$_POST[email]中取得具体数据,第三个参数说明具体过滤标准,第四个参数为具体过滤标准的相应参数(可省略)
-
0赞 · 0采集
-
-
黄枪枪
2017-02-10
- 表单输入过滤下篇
//2.2过滤用户输入的特殊字符
public static function validate_str($str){
if(mb_strlen($str,'UTF8')<1){ //以UTF8格式获取字符串的长度获取字符串长度
return false;
}
//htmlspecialchars把预定义的字符转换为HTML实体,ENT_QUOTES为编码$str内的双引号和单引号
//nl2br()在字符串中的每个新行(\n)之前插入 HTML 换行符(<br> 或 <br />)
$str=nl2br(htmlspecialchars($str,ENT_QUOTES));
return $str;
}
-
0赞 · 0采集
-
-
黄枪枪
2017-02-10
- 表单输入过滤中篇
2.程序分析
//2.1检测用户输入的数据
public static function validate(&$arr){ //&为引用声明:&$arr
if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL))){
$errors['email']='请输入合法邮箱';
}
if(!($data['url']=filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL))){
$url='';
}
//过滤函数的回调函数,函数名必须存入名为 "options" 的关联数组中
if(!($data['content']=filter_input(INPUT_POST,'content',FILTER_CALLBACK,array('options'=>'Comment::validate_str')))){
$errors['content']='请输入合法内容';
}
//过滤标准的相应参数必须存入一个名为 "options" 的关联多维数组中。
$int_options=array(
'options'=>array( //FILTER_VALIDATE_INT对应参数
'min_range'=>1, //min_range - 规定最小整数值
'max_range'=>5 //max_range - 规定最大整数值
)
);
if(!($data['face']=filter_input(INPUT_POST,'face',FILTER_VALIDATE_INT,$int_options))){
$errors['face']='请选择合法头像';
}
if(!empty($errors)){
$arr=$errors;
return false;
}
$arr=$data;
$arr['email']=strtolower(trim($arr['email'])); //strtolower()将字符串转换成小写 trim()去掉前后空格
return true;
}
-
0赞 · 0采集
-
-
黄枪枪
2017-02-10
- 表单输入过滤上篇
1.php5.4起支持回调函数
1).函数做回调函数,以 string 类型传递其名称。()可以使用任何内置或用户自定义函数,但不能使用语言结构(如:array(),echo,empty(),eval(),exit(),isset(),list(),print 或 unset() )函数
2).一个已实例化的对象的方法被作为数组传递,下标 0 包含该对象,下标 1 包含方法名。
3).静态类方法也可不经实例化该类的对象而传递,只要在下标 0 中包含类名而不是对象。自 PHP 5.2.3 起,也可以传递 'ClassName::methodName'。
function my_callback_function() {
echo 'hello world!';
}
class MyClass {
static function myCallbackMethod() {
echo 'Hello World!';
}
}
//函数做回调函数
call_user_func('my_callback_function');
//静态方法做为回调函数
call_user_func(array('MyClass', 'myCallbackMethod'));
call_user_func('MyClass::myCallbackMethod');
// 对象方法做回调函数
$obj = new MyClass();
call_user_func(array($obj, 'myCallbackMethod'));
filter_input()为几大过滤函数之一的:获取脚本外数据并进行字符合法化过滤函数.
filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL)
filter_input()参数说明:第一个参数表示调用的数据是外部通过POST方法传输过来,第二个参数表明从$_POST[email]中取得具体数据,第三个参数说明具体过滤标准,第四个参数为具体过滤标准的相应参数(可省略)
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- $options=array(
array(
min_range=>1,
max_range=>5
)
);
Filter_input(input_post,"hed",FILTER_VALIDATE_INT,$options);
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- $str=nl2br(htmlspecaticalchars($str,ENT_QUOTES));
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- Mb_strlen
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- Filter_input(input_post,"content",FILTER_CALLBACK,array("options"=>方法名))
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- Filter_input(input_post,'url',FILTER_VALIDATE_URL)
FILTER_VALIDATE_EMAIL
INPUT_POST是关键字?
-
0赞 · 0采集
-
-
异常代码
2016-11-12
- 前端检查通过显示显示源代码,然后更改源代码,然后再执行,这种方式就能绕过前端检查?
-
0赞 · 0采集
-
-
流浪佳人纳入怀
2016-10-27
- 截图3
-
截图
0赞 · 0采集
-
-
流浪佳人纳入怀
2016-10-27
- 表单输入过滤:表单数据的合法验证,无用恶意字符的过滤。截图2
-
截图
0赞 · 0采集
-
-
流浪佳人纳入怀
2016-10-27
- 表单输入过滤:表单数据的合法验证,无用恶意字符的过滤。截图1
-
截图
0赞 · 0采集
-
-
DansonL
2016-07-27
- 过滤用户输入的特殊字符。
-
截图
0赞 · 0采集
-
-
DansonL
2016-07-27
- PHP自带的过滤器过滤post请求
-
截图
0赞 · 0采集
-
-
203
2016-06-10
- &($arr)&的作用
表示变量是引用传递,调用函数后变量的值跟着改变,如果不清楚,可以通过百度搜索“php函数间的参数传递(值传递/引用传递)”,了解他们之间的区别
-
0赞 · 0采集
-
-
Wendy_22
2016-05-07
- filter_input检查是否写入合适的参数,htmlspecialchars() 检查是否有不合适的HTML语句插入。bl2br ()
-
截图
0赞 · 0采集
-
-
phpcreate
2016-01-04
- 1.filter_input()//php内置过滤器
-
0赞 · 0采集
-
-
TracyAnt
2015-12-22
- filter()内置过滤器
trim()过滤函数
<?php
class Comment{
private $data = array();
function __construct($data){
$this->data = $data;
}
public static function validate(){
if(!(filter_input(INPUT_POST,'email',FILTER_VALIDATE_EMAIL))){
$errors['email'] = '请输入邮箱';
}
if(!(filter_input(INPUT_POST,'url',FILTER_VALIDATE_URL))){
$url = '';
}
if(!(fileter_input(INPUT_POST,'content',FILTER_CALLBACK,array('op tions'=>'Comment::validate_str') ))){
$errors['content'] = '请输入内容';
}
if( !(filter_input(INPUT_POST,'username',FILTER_CALLBACK,array('options'=>'Comment::validate_str'))) ){
$errors['username'] = '请输入用户名';
}
$options = array('option'=>array('min_range'=>1,'max_range'=>5));
if(!(filter_input(INPUT_POST,'face',FILTER_VALIDATE_INT,$options))){
$errors['face'] = '请选择合法头像';
}
if(!empty($errors)){
$arr = $errors;
return false;
}
$arr = $data;
$arr['eamil'] = trim($arr['email']);
return true;
}
}
?>
-
0赞 · 1采集
-
-
_且行且思
2015-12-11
- filter
-
截图
0赞 · 0采集
-
-
Mrzhangy
2015-10-02
- trim过滤函数
-
0赞 · 0采集
-
-
恋高三
2015-09-16
- 过滤用户输入的特殊字符
-
截图
0赞 · 0采集
-
-
恋高三
2015-09-16
- 后台过滤
-
截图
0赞 · 0采集