Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP净化标记-html输出_Php_Mysql Real Escape String_Wmd Editor_Wmd Markdown - Fatal编程技术网

PHP净化标记-html输出

PHP净化标记-html输出,php,mysql-real-escape-string,wmd-editor,wmd-markdown,Php,Mysql Real Escape String,Wmd Editor,Wmd Markdown,我的网站上有WMD编辑器,我将降价存储在数据库中。但在将降价发送到数据库之前,我使用mysql\u real\u escape\u字符串对其进行过滤,如下所示: $to_database = mysql_real_escape_string($_POST['markdown']); 没关系。但现在我想展示它,所以我使用PHP标记,它将标记转换为html。但问题是它显示的是\r\n和\n而不是新行。我尝试了nl2br函数,但没用。即使我没有转义输出,也不要将标记转换为html,并且使用htmlp

我的网站上有WMD编辑器,我将降价存储在数据库中。但在将降价发送到数据库之前,我使用mysql\u real\u escape\u字符串对其进行过滤,如下所示:

$to_database = mysql_real_escape_string($_POST['markdown']);
没关系。但现在我想展示它,所以我使用PHP标记,它将标记转换为html。但问题是它显示的是\r\n和\n而不是新行。我尝试了nl2br函数,但没用。即使我没有转义输出,也不要将标记转换为html,并且使用htmlpurifier,我仍然得到\n而不是新行。 只有当我删除mysql\u real\u escape\u字符串时,它才看起来很好

bbbbbbbbbbbb
nnnnnnnnn

它们正在被转换,不再充当换行符。您要替换它们:

$markdown = str_replace('\r\n','<br/>',$_POST['markdown']);
$markdown = str_replace('\n','<br/>',$markdown);

它们正在转换,不再充当换行符。您要替换它们:

$markdown = str_replace('\r\n','<br/>',$_POST['markdown']);
$markdown = str_replace('\n','<br/>',$markdown);

您的输入层上可能有一些内容,并使用反斜杠转义传入字符,因此,当您使用mysql\u real\u escape\u string时,实际上得到的是双转义内容


如果你很不走运的话,这可能是神奇的gpc,在这种情况下,你应该尽快,或者如果你真的不能,那么。

你的输入层上可能有一些东西,用反斜杠转义传入的字符,所以当你使用mysql\u real\u escape\u字符串时,你实际上得到了双转义内容


如果你非常不走运的话,这可能是神奇的\u quotes\u gpc,在这种情况下,你应该尽快,或者如果你真的不能那么做。

谢谢,但是它在文本中显示了它的br/在源代码中。PHP Markdown以某种方式转换为html实体,我猜是因为当我删除PHP Markdown处理时,我得到了行断开ok.str_replace接受数组,您可以在一个函数调用中完成:str_replacearray'\r\n','\n',$\u POST['Markdown']谢谢,但是它在源代码中的br/文本中显示了我。PHP Markdown以某种方式转换为html实体,我猜是因为当我删除PHP Markdown处理时,我得到了行断开ok.str_replace接受数组,您可以在一个函数调用中完成:str_replacearray'\r\n','\n',$\u POST['Markdown']