最近发觉杜初的那本<PHP5>的书不错,学习之,笔记之
1) 判断表单来源地址
  <?php
 $action = $_SERVER['PHP_SELF'];
 if ($_SERVER['REQUEST_METHOD'] == 'POST'){
     $ref = $_SERVER['HTTP_REFERER'];
     $srv = "http://{$_SERVER['SERVER_NAME']}$action";
     echo "当前来源为:<br><b>$ref</b><br>服务器地址为:<br><b>$srv</b><hr>";
     if (strcmp($srv, $ref) == 0){
         echo "匹配";
     }   else{
         echo "不允许站外提交";
     }
 }else{
     echo '请提交表单';
 }
?>
<form action="<?php echo $action;?>" method="post">
<input type="submit" value="提交"/>
</form>

  $_server['http_referer'] :保存一个完整的URL地址
  $_server['server_name']:当前服务器的名称
  $_server['php_self']:保存脚本完整路径.
2) htmlspechialchars($str)
  这个是将HTML转义的,比如<a href="http://...>xxx</a>,实际上还是显示回<a href="http://...>xxx</a>,而不会显示成一个连接.
  注意htmlspechialchars(xxxx,参数2,参数3),参数2中有三个选择
  ENT_COMPAT:转换双引号但保留单引号
  ENT_QUOTES:同时转换单引号和双引号
  ENT_NOQUOTES:表示两个都不转换.默认是ENT_COMPAT
  还有参数3是转换编码的,具体查手册
3) htmlentity_decode(),则把HTML字符正常显示为HTML字符的,如<a href="http://...>xxx</a>,会
连接成一个正常的连接.
4) strip_tags,将清楚所有HTML字符
  如<a href="http://...>xxx</a>,将会显示为XXXX
 如果要保留某一个字符的话,可以这样strip_tags($string,"<a>");