PHP安全输出
输出用户输入时我使用这个函数:
function bbkoda($text) {
$text = htmlspecialchars($text);
$text = nl2br($text);
$hitta = array(
"'\[b](.*?)\[/b]'is",
"'\[i](.*?)\[/i]'is"
);
$byt = array(
"<b>\\1</b>",
"<i>\\1</i>"
);
$text = preg_replace($hitta, $byt, $text);
return $text;
}
这很安全,对吧? 我使用 mysql_real_escape_string 清理所有插入数据库的内容,并使用 htmlspecialchars 输出。 我是一个非常怀疑的人 :P
谢谢
When outputting user input I use this function:
function bbkoda($text) {
$text = htmlspecialchars($text);
$text = nl2br($text);
$hitta = array(
"'\[b](.*?)\[/b]'is",
"'\[i](.*?)\[/i]'is"
);
$byt = array(
"<b>\\1</b>",
"<i>\\1</i>"
);
$text = preg_replace($hitta, $byt, $text);
return $text;
}
This is pretty safe right? I sanitize all i insert to db with mysql_real_escape_string
and output it with htmlspecialchars
. Im a very doubtful person :P
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
stackoverflow< 上已经有一个很好的解释/a> 关于这个主题。 基本上,您肯定需要在输入和输出上下功夫才能真正安全!
There is already a quite good explanation on stackoverflow on this topic. Basically you definitely need to work on your in- and output to get it really safe!