PHP小技巧 防XSS
来源:互联网 发布:mac迅雷开机自动启动 编辑:程序博客网 时间:2024/05/04 00:01
htmlspecialchars();用这个函数编译一下表单提交时的数据可以防XSS
urlencode(); 如果你在拼写url链接时传递的参数中有特殊字符,导致get时无法正确获得值,那么用这个函数编译一下url地址
使用ajax传递参数时最好用encodeURIComponent();编译一下传送的值,可以避免获取不到参数的问题
onclick="this.form.reset();return false;" //重置表单事件
<?php
$data = array('foo'=>'bar',
'baz'=>'boom',
'cow'=>'milk',
'php'=>'hypertext processor');
echo http_build_query($data);
输出:
foo=bar&baz=boom&cow=milk&php=hypertext+processor
?>
$(document).ready(function(){//这个就是jQueryready ,它就像C语言的main 所有操作包含在它里面
$("#send_mail_button").click(function(){
getajax(); //点击ID为"send_mail_button"的按钮后触发函数 getajax();
});
});
function getajax(){
var content = $("textarea#send_mail_content").val();//获取对象值 。。。你懂的
$.ajax(
{ type: "post",
url:'/index.php?r=user/getajax',
data: 'content='+encodeURIComponent(content), //编译传递的参数
//dataType:'json',
success: function(json){ //接收传回来的值
document.getElementById("send_mail_span").innerHTML="<font style='color:red;'>"+json+"</font>"//输出到id为send_mail_span的span里
}
}
)
}
</script>
<?
$arrcheck = array(
'NorthAmerica'=> 'North America',
'SouthAmerica'=> 'South America',
'WesternEurope'=> 'Western Europe',
'EasternAsia'=> 'Eastern Asia',
'SoutheastAsia'=> 'Southeast Asia',
'Middle'=> 'Middle East',
'Africa'=> 'Africa',
'Oceania'=> 'Oceania',
'Worldwide'=>'Worldwide'
);
if($reg->marketname){
}
foreach($arrcheck as $key=>$value){
echo "<span class=fleft style='margin-right:50px;'><input type=checkbox name=marcket[] value='".$key."'".$checked.">".$value."</span>";
}
?>
</td>
先定义个一个包含所有选项的大数组,然后读取到一个需要选中的小数组,利用第三个数组判断小数组中的值有那些出现在大数组里,然后设为选中,最后遍历数组显示。
implode(',',arr)这个是把数组以一个符号分隔数组每个值并存放成字符串。
explode(',',arr)这个则是把字符串按一个字符分割,存放到数组。
http_build_query($_GET); 当前url?以后的东西
str_replace('+86-','', +86-3016331313);字符替换,这个就是将+86-替换成空格
电话号码正则 0\d{2}-\d{8}|0\d{3}-\d{7};
正则替换匹配字符preg_replace('/-(.*)\./is','.',$str);
'/-(.*)\./is' 这个正则是匹配-开始.结束的任意字符,可以随便换。由于.是特殊字符所有用\转意
一些常用的正则:
Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
Phone : /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/,
Mobile : /^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$/,
Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*$/,
IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/,
Currency : /^\d+(\.\d+)?$/,
Number : /^\d+$/,
Zip : /^[1-9]\d{5}$/,
QQ : /^[1-9]\d{4,8}$/,
Integer : /^[-\+]?\d+$/,
Double : /^[-\+]?\d+(\.\d+)?$/,
English : /^[A-Za-z]+$/,
Chinese : /^[\u0391-\uFFE5]+$/,
Username : /^[a-z]\w{3,}$/i,
UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}\?\\\/\'\"]*)|.{0,5})$|\s/,
- PHP小技巧 防XSS
- XSS小技巧
- ASP防XSS注入函数技巧
- 防超时小技巧
- PHP 防SQL注入和XSS攻击
- php防sql注入和xss攻击
- PHP "完美"的防XSS 防SQL注入的代码
- PHP "完美"的防XSS 防SQL注入的代码
- PHP中防XSS攻击和防sql注入
- PHP "完美"的防XSS 防SQL注入的代码
- 整理php防注入和XSS攻击通用过滤
- PHP "完美"的防XSS 防SQL注入的代码 喷
- PHP "完美"的防XSS 防SQL注入的代码 喷
- Filter 防Xss攻击
- 防xss攻击总结
- 防XSS注入
- SpringBoot防XSS攻击
- PHP小技巧
- if(a) 与 if(a==true) 比较
- Android 3G连接状态判断
- WindowXP使用"包含文字"搜索,找不到文件之解决办法
- 13、内核Kconfig详解
- [iOS开发高效第三方库之]sqlite3封装库---FMDB
- PHP小技巧 防XSS
- 怎样编写Apple Push Notification服务器
- Makefile教程
- Python通过HTTP协议定期抓取网页
- 视音频播放(Android学习随笔七)
- 2.6.24内核中对S3C2440的引导启动分析
- gdb中汇编调试
- 【转载】mysql 百万级记录时查询优化方案
- 14、linux2.6.31--LCD驱动移植