清洁& PHP 中的安全字符串
可能的重复:
PHP:终极清洁/安全功能
使用 PHP 清理用户输入的最佳方法是什么?< /a>
我应该在我的函数中添加什么,以确保传递它的每个字符串都是“服务器友好的”?我使用这个小函数来检查包含姓名、电子邮件地址和 ID 的输入。
function checkInput($str) {
$str = @strip_tags($str);
$str = @stripslashes($str);
$str = mysql_real_escape_string($str);
return $str;
}
Possible Duplicates:
PHP: the ultimate clean/secure function
What's the best method for sanitizing user input with PHP?
What should I add to my function to be sure that every string that passes it will be 'server-friendly'? I use this small function to check inputs that contains names, e-mail addresses and ids.
function checkInput($str) {
$str = @strip_tags($str);
$str = @stripslashes($str);
$str = mysql_real_escape_string($str);
return $str;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我会删除一些特殊字符,它们在此类字符串中无关,可用于代码注入,例如 $ % # < > |等等。
I would remove some special characters thet have nothing to do in such strings and could be used for code injections, like $ % # < > | and so on.
这应该有效:
有关更详细的解释,请参阅此处
This should work:
For a more detailed explanation, see here
服务器友好是什么意思?
对于电子邮件地址等验证,请查看数据过滤。
为了确保字符串对于数据库使用转义是安全的,例如
mysql_real_escape_string
输出数据时使用
htmlspecialchars
What does server friendly mean?
For validation such as email addresses take a look at data filtering.
To make sure a string is safe for database's use escaping such as
mysql_real_escape_string
When outputting data use
htmlspecialchars
关于数据库,请检查 PDO 占位符。它们是跨 DBMS 的。
About DataBase, check PDO placeholders. They are cross DBMS.