微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 没有mysql_real_escape_string的清理联系表单

我通常使用此函数来清理我的表单输入,然后将它们存储到我的数据库中:
//Function to sanitize values received from the form. Prevents sql injection
function clean($str) {
    $str = @trim($str);
    if(get_magic_quotes_gpc()) {
        $str = stripslashes($str);
    }
    return MysqL_real_escape_string($str);
}

直到今天我还没有意识到MysqL_real_escape_string需要数据库连接,因为我在将数据存储到数据库之前清理数据时只使用了它.

我尝试在联系表单上使用该功能,并得到“无法建立到服务器的链接错误.我可以连接到数据库,但没有必要,因为我只是在通过联系表单发送到我的电子邮件之前尝试清理数据.

清理未存储在MysqL数据库中的数据的最佳方法是什么?这些数据是否仍需要清理?

使用filter_var()

http://php.net/manual/en/function.filter-var.php

就像你想要清理电子邮件一样:

$_POST['email'] =    filter_var($_POST['email'],FILTER_SANITIZE_EMAIL);

消息

$_POST['message'] = filter_var($_POST['message'],FILTER_SANITIZE_STRING);

是恩惠

原文地址:https://www.jb51.cc/php/134906.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐