PHP 判断是否为空的函数/XSS跨站过滤

isset() 这个函数用于判断值是否为空。返回的是true 和 false.

XSS过滤这里需要自己进行处理,在网上搜了一下代码。具体好不好用还不清楚。

感觉有点复杂,不过还是稳步向前比较好,在入口上需要费点功夫。。

把正在研究的发出来把。。。欢迎指教,当然,也希望有人能够回复下。提点下,谢谢!

登录表单如下:

<html>
    <head>
        <title>Report Login</title>
    </head>
    <body>
        <form method="post" action="inc/check.php" >
            UserName:<input type="text" name="username" /><br />
            PassWord:<input type="password" name="password" /><br />
            <input type="submit" />
        </form>
    </body>
</html>

PHP验证过滤(目前还有问题):

smart@smart:/var/www/login$ cat inc/check.php 
<?php
    $username=$_POST['username'];
    $password=$_POST['password'];
    if(isset($username) ){
        header("location: ../login.php");
    }else{
        uh($username);
        uh($password);
        header("location: ../admin/index.php");
    }
        

    function uh($str){
    $farr = array(
        "/\s+/", 
        "/< (\/?)(script|i?frame|style|html|body|title|link|meta|\?|\%) ([^>]*?)>/isU", 
        "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU", 
   );
   $tarr = array(
        " ",
        "锛淺\1\\2\\3锛�", 
        "\\1\\2",
   );

  $str = preg_replace( $farr,$tarr,$str);
   return $str;
} 
?>
smart@smart:/var/www/login$ 
原文地址:https://www.cnblogs.com/xiaoCon/p/2993459.html