当前位置:  开发笔记 > 编程语言 > 正文

用于清理输入值PHP的函数

如何解决《用于清理输入值PHP的函数》经验,为你挑选了1个好方法。

我用这个:

function safeClean($n)
{
    $n = trim($n);

    if(get_magic_quotes_gpc())
    {
        $n = stripslashes($n);
    } 

    $n = mysql_escape_string($n);
    $n = htmlentities($n);

    return $n;
}

防止任何类型的MySQL注入或类似的东西.每当我用它来包裹$ _POST时:

$username = safeClean($_POST['user']);
$password = md5(safeClean($_POST['password']));
$vpassword = md5(safeClean($_POST['verify']));
$email = safeClean($_POST['email']);

它甚至没有工作,但我附加了functions.php,目录是正确的,但根本不起作用,因为它只显示一个空白页...如果我从每个$ _POST中删除safeClean(),它的工作原理.

为什么这根本不起作用?



1> Weston C..:

在我看来,这种一般的消毒方法并不是思考问题的最佳方式.首先,参数化查询(可能最方便使用PDO)是解决SQL安全问题的更好方法.但总的来说 ......

我知道开发人员的冲动是尝试减少你必须考虑的事情.所以,当然,你想知道你是否可以提出一个通用的消毒功能,你只需将所有输入交给,而不必再担心.输入是一个竞技场,但如果你真的想要安全性,你需要特别考虑每个传入的数据应该是什么以及它最终会在哪里.如果你在这里继续自动驾驶,你在某些时候引入安全问题.

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有