转义字符

来源:互联网 发布:淘宝土特产店名 编辑:程序博客网 时间:2024/06/14 19:30

从表单接收到$_POST[*]

该信息内容可能包括“”空格 特殊符号

例如 “user” ‘’ ‘’“abc

$_POST[pass]=“” And select * from tbl_user) 

防注入(攻击)

php安全问题:

1、 注入、

2、 Sql

3、 再用户执行注册中口令使用了类似(select insert delete 等)

4、 Eregi(“正则表达式“,判断字符串,“第三个变量”)

5、 Addslashes()\:转义字符

Php

1、 Register_glabals=off|on

2、 $_POST[name]

3、 $name

4、 Sql语句尽量不要省略引号

5、 $_POST[GET COOKIE]过滤后接受

6、 命名数据库

7、 尽量封装方法,尽量避免暴露

8、 重定向

9、 考虑:web项目有多少

10、 过滤的过程写成一个函数单独存储到一个文件

11、 实现过滤接收到的表单数据的功能

12、 写成函数

13、 把带有特殊符号的字符串过滤普通的字符串

14、 定义函数

15、 参数$form:包含调用函数页面中所有input标签

16、 Function check_form($form){

17、 Get_magic_quotes_gpc(void)获取php.inimagic_quotes_gpc的开启状态

18、 magic_quotes_gpc=on返回true

19、 magic_quotes_gpc=off返回false

20、 if(!Get_magic_quotes_gpc(input数组名){

21、 for($i=;$i<count($form){

22、 $form[$i]=addslashes($form[$i]);

23、 

24、 }

25、 

26、 }

27、 需要将多余一个的信息传到外部

28、 第一种:组成字符串

29、 第二种:组成数组

30、 

31、 Return $form

32、 }

33、 判断if(magic_quotes_gpc状态on){

34、 Addslashes(表单数据)

35、 User\ ‘’ ‘’ abc” 

36、 删除反斜线

37、 Stripslasshes()

38、 }else{

39、 Addslashes()

40、 }

41、 

42、 }

43、 

验证码

设计表

Username password  status md5name

Zhangsan 123456 0

http://localhost/test.php?name=.........

Name=zhangsan

//判断用户是否点击了提交按钮

If(isset($_POST[op])){

If($_POST[op]==register){

Include(reg.php);

exit

}

Require 当前页面;

两个页面中

也可以在一个页面

<?php

Include(“”);

//调用函数check_form进行过滤

将当前页面form表单的input信息进行过滤

Input的属性分别是edit{name}editpass

$_POSt[edit]

$form= check_form($_POSt[edit]);

将用户传入的数组$orm拆分成独立的变量

Extract():将数组中的元素转换成独立的变量,元素下=元素值

产生了三个变量$name $pass

变量值为客户输入信息(过)

插入数据表

$sql= insert into tbl_user values();

?>


原创粉丝点击