<?php


//系统配置 

$se_name = "localhost"; 	         // 数据库主机名
$sedb_name = "root"; 		        // 数据库用户名
$db_pass = "root"; 		       // 数据库密码
$db_name = "ceshi"; 	      // 数据库名

//数据库配置

mysql_connect($se_name,$sedb_name,$db_pass) or die("无法连接数据库，请重来");

mysql_select_db($db_name);  //选择数据库

mysql_query("SET NAMES 'utf8'");/*解决汉字*/

date_default_timezone_set('PRC');

error_reporting(0);

//防注入函数 主要是为了防止恶意写入后台数据库
function input_check($sql_str) { 
   $check=eregi('select|order by|from|and|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile|system_user|user|current_user|database|version', $sql_str);     // 进行过滤 
   if($check){ 
       echo "非法注入内容！抱歉，本站没有你想要的东西，请加我QQ:562086760 交流技术，不胜感谢！"; 
       exit(); 
   }else{ 
       return $sql_str; 
   } 

} 

function make_safe($variable) {
$variable = strip_tags(trim($variable));
$variable = htmlspecialchars($variable);
$variable = addslashes($variable);
return $variable;
}

//输出安全的HTML代码
function safe($text){
    $text    =    trim($text);
    //完全过滤注释
    $text    =    preg_replace('/<!--?.*-->/','',$text);
    //完全过滤动态代码
    $text    =    preg_replace('/<\?|\?'.'>/','',$text);
    //完全过滤js
    $text    =    preg_replace('/<script?.*\/script>/','',$text);

    $text    =    str_replace('[','&#091;',$text);
    $text    =    str_replace(']','&#093;',$text);
    $text    =    str_replace('|','&#124;',$text);
    //过滤换行符
    $text    =    preg_replace('/\r?\n/','',$text);
    //br
    $text    =    preg_replace('/<br(\s\/)?'.'>/i','[br]',$text);
    $text    =    preg_replace('/(\[br\]\s*){10,}/i','[br]',$text);
    //过滤危险的属性，如：过滤on事件lang js
    while(preg_match('/(<[^><]+)( lang|on|action|background|codebase|dynsrc|lowsrc)[^><]+/i',$text,$mat)){
        $text=str_replace($mat[0],$mat[1],$text);
    }
    while(preg_match('/(<[^><]+)(window\.|javascript:|js:|about:|file:|document\.|vbs:|cookie)([^><]*)/i',$text,$mat)){
        $text=str_replace($mat[0],$mat[1].$mat[3],$text);
    }
    if(empty($tags)) {
        $tags = 'table|td|th|tr|i|b|u|strong|img|p|br|div|strong|em|ul|ol|li|dl|dd|dt|a';
    }
    //允许的HTML标签
    $text    =    preg_replace('/<('.$tags.')( [^><\[\]]*)>/i','[\1\2]',$text);
    //过滤多余html
    $text    =    preg_replace('/<\/?(html|head|meta|link|base|basefont|body|bgsound|title|style|script|form|iframe|frame|frameset|applet|id|ilayer|layer|name|script|style|xml)[^><]*>/i','',$text);
    //过滤合法的html标签
    while(preg_match('/<([a-z]+)[^><\[\]]*>[^><]*<\/\1>/i',$text,$mat)){
        $text=str_replace($mat[0],str_replace('>',']',str_replace('<','[',$mat[0])),$text);
    }
    //转换引号
    while(preg_match('/(\[[^\[\]]*=\s*)(\"|\')([^\2=\[\]]+)\2([^\[\]]*\])/i',$text,$mat)){
        $text=str_replace($mat[0],$mat[1].'|'.$mat[3].'|'.$mat[4],$text);
    }
    //过滤错误的单个引号
    while(preg_match('/\[[^\[\]]*(\"|\')[^\[\]]*\]/i',$text,$mat)){
        $text=str_replace($mat[0],str_replace($mat[1],'',$mat[0]),$text);
    }
    //转换其它所有不合法的 < >
    $text    =    str_replace('<','&lt;',$text);
    $text    =    str_replace('>','&gt;',$text);
    $text    =    str_replace('"','&quot;',$text);
     //反转换
    $text    =    str_replace('[','<',$text);
    $text    =    str_replace(']','>',$text);
    $text    =    str_replace('|','"',$text);
    //过滤多余空格
    $text    =    str_replace('  ',' ',$text);
    return $text;
}




?>