【问题标题】:nl2br() , preg_replace , htmlspecialchars() and mysql_real_escape_string()nl2br() , preg_replace , htmlspecialchars() 和 mysql_real_escape_string()
【发布时间】:2014-06-15 07:38:16
【问题描述】:

我已阅读与此相关的所有答案,但无法获得清理数据的确切顺序

我要输入

<?php echo 'yes'; ?>

<?php echo 'yes' ?>

进入一个文本区域,并在数据库中按原样提交,并与换行符一样输出代码,就像stackoverflow所做的那样。

输出是这样的

<?php echo \'yes\'; ?>\r\n\r\n<?php echo \'yes\'; ?>

注意:htmlspecialchars() 正在输出准确的代码但没有换行符...

nl2br() 没有将 /r 和 /n 作为换行符

【问题讨论】:

  • 将数据插入数据库时​​使用mysql_real_escape_string,在HTML文档中打印数据时使用htmlspecialcharsnl2br

标签: php html mysql


【解决方案1】:

插入数据时也可以使用以下函数

 $unwanted = array("-", "_", "+"," ", etc .. );
 $yourVariable = str_replace($unwanted, "NULL", $yourVariable);

trim($yourVariable);

此函数返回一个从开头和结尾去掉空格的字符串或 yourVariable

【讨论】:

    猜你喜欢
    • 2012-11-11
    • 1970-01-01
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    • 2013-10-11
    相关资源
    最近更新 更多