if($num==0)
if($send)
这两个看起来不安全。还有你的SQL字符串生成时最好作一下处理。以除注入SQL

解决方案 »

  1.   

    我说楼主你进行mysql操作的时候,也不把那些提交的变量进行一下处理?那样很不安全吧。
      

  2.   

    严格控制传过来的user,pas的字符长度。
      

  3.   

    自己写一个函数过滤'符号,过滤select,update,delete等语句啦!对传过来的ID,判断它是否为数字!
      

  4.   

    你取得提交页面的域名。看看是不是你自己的。不是PASS,
    一般注入功击用""这些分号中插入其它SQL语句。
    用addslashes()去掉分号
      

  5.   

    再严格都有漏洞,一定写代码的时候要小心小心再小心,功能和安全都重要,建议去看看phpe上面的一段专题: PHP程序优化与安全 http://www.phpe.net/special/4.shtml还有千万不要把程序的源代码泄露出去,否则死的更难看...
    我一个网友,他测试我的程序的时候,不屑的说,这就是你写的程序,一点安全性都没有? 555~~~~
      

  6.   

    变量未过滤 就执行SQL查询!
    一个字:晕
      

  7.   

    用户名不允许非法字符数据验证按用户名查找密码。如:$sql = "select password from TABLE where name = $name";
    $query = mysql_query ($sql);
    $result = mysql_fetch_array ($query);
    $pass = md5 ($_POST['password']);if ($result['0']['password'] == $pass){
       echo "登录成功";
    } else {
       echo "登录失败";
    }