PHP开发学习笔记
程序员文章站
2022-05-01 15:36:19
...
1、在用户登录或者查询数据等时候有些时候可能会有引号等对sql语句有影响的符号(sql注入攻击),这样等对他们进行数据库里的操作的时候会有影响,
这种情况应该怎么办呢?
方案:可以用addslashes 和 stripslashes
addslashes是可以使单引号(,),双引号("),反斜线(\)与NULL(NULL字符)加上反斜线进行转义
stripslashes是与addslashes相对的一个方法,是把这些转义过的还原
2、有些PHP版本magic_quotes_gpc这个配置是有用的,即自动魔术引号,即如果这个配置开启的话,$_POST ,$_COOKIE,$_SESSION这些值会自动进行转义,就不需要我们来转义
这种情况下怎么办呢?
答:为了兼容性和移植性,我们要对他进行判断,
看如下代码:
3、什么叫做XSS攻击呢?这种情况又该怎么办呢?
答:XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆。
我们可以用htmlspecialchars方法,即html实体转义,即等这些html符号,都会被转化,那么当打印出来的时候,只会当他们是文字,而不是脚本了
这种情况应该怎么办呢?
方案:可以用addslashes 和 stripslashes
addslashes是可以使单引号(,),双引号("),反斜线(\)与NULL(NULL字符)加上反斜线进行转义
stripslashes是与addslashes相对的一个方法,是把这些转义过的还原
2、有些PHP版本magic_quotes_gpc这个配置是有用的,即自动魔术引号,即如果这个配置开启的话,$_POST ,$_COOKIE,$_SESSION这些值会自动进行转义,就不需要我们来转义
这种情况下怎么办呢?
答:为了兼容性和移植性,我们要对他进行判断,
看如下代码:
'; }else{ echo '魔术引号未开启,$textarea需要转义','
'; $textarea = addslashes($textarea); } ?>
3、什么叫做XSS攻击呢?这种情况又该怎么办呢?
答:XSS攻击:跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆。
我们可以用htmlspecialchars方法,即html实体转义,即等这些html符号,都会被转化,那么当打印出来的时候,只会当他们是文字,而不是脚本了
'; //返回 ?>
以上就介绍了PHP开发学习笔记,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
下一篇: ThinkPHP中U方法的使用浅析