首页 > 解决方案 > 使用 php 清理 html 输入

问题描述

我正在使用 php,我只想问一下我用来清理输入的功能是否足够好,可以防止 sql 注入和其他可能通过输入发生的恶意内容。


public function test_input($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    return $data;
}

以下是我希望你们评价我的标准:

这是清理用户输入的最有效方法吗?

它是否可以很好地清理输入以阻止恶意代码进入我的数据库?

这也只是一个奖励,但如果我清理用户的输入,我是否需要清理其他任何内容?在将用户参数输入数据库之前,我已经绑定了用户参数。

标签: phpsql-injectionsanitization

解决方案


验证主要取决于您网站的上下文,应确认哪些内容以尽可能保持数据库一致。还有一些类似于全局或公共的验证,例如trim () 和stripslashes ()

验证的主要功能是检查将存储在数据库中以供将来使用的用户输入,例如登录或注册时的电子邮件或电话号码和用户密码。您应该验证电话号码是否为数字且长度仅为 12。或验证电子邮件格式是否正确。

关于用于验证的内容,您可以搜索: FILTERs here https://www.w3schools.com/php/php_filter.asp

常规体验在这里https://www.w3schools.com/php/php_regex.asp

其他方法是使用字符串函数:这里https://www.w3schools.com/php/php_ref_string.asp


推荐阅读