一个入门级别的例子,代码如下:
$k = $_request['k']; $k = addslashes($k);//转义:单引号,双引号,反斜线,null $k = str_replace('%', '\%', $k); $k = str_replace('_', '\_', $k); $sql = select * from users where name like '%$k%'; if(!emptyempty($k)){ $res = mysql_query($sql, $con) or die(mysql_error()); if($row = mysql_fetch_assoc($res)){ foreach($row as $k=>$v){ echo $row[$k].':'.$row[$v].'
'; } } }else{ echo '******'; } 补充:mysql_real_escape_string();所以得sql语句如果有类似这样的写法:select * from cdr where src =.$userid; 都要改成 $userid=mysql_real_escape_string($userid) 例子代码如下: 所有有打印的语句如echo,print等,在打印前都要使用htmlentities() 进行过滤,这样可以防止xss,注意中文要写出,代码如下:
htmlentities($name,ent_noquotes,gb2312).
