从mysql选择查询中检索后如何从输出中删除html标签?

时间:2014-01-05 09:11:46

标签: php html mysql

我在插入db之前使用htmlentities来处理表单数据。当从数据库中检索数据并在我的应用程序中输出数据时,会出现html标记。

如何从mysql执行我的选择查询,并在没有html标签的情况下回显数据?

我的代码示例:

<tr><th>Message: </th><td><?php echo $string; ?></td></tr>

现场输出:

 <br><br>Michael <br>Hotel Murray <br>1 Interstate Blvd. <br>Bluepoint, NJ 55555 

(续)

使用strip_tags后,网页上的输出仍会显示其中的标记。如果我使用我构建的编辑页面(包括WYSIWYG编辑器)查看输出,WYSIWYG编辑器框中编辑页面上的相同文本的输出(编辑之前)是正确的(我的意思是 - html实际上是被视为html并且输出或html被相应地格式化。)。但是,如果我只是在不使用编辑器的情况下回显页面上的字符串,它会保留标记并且根本不对其进行格式化。请看:

目前:

$ string = $ row ['template_string'];

echo strip_tags($ string);
回声“\ n”;

输出:



迈克尔·酒店穆雷·1号州际大道。
Bluepoint,NJ 55555

尝试结束:

$ string = $ row ['template_string'];

echo strip_tags($ string);
回声“\ n”;

输出:

迈克尔
Hotel Murray
1 Interstate Blvd.
Bluepoint,NJ 55555

3 个答案:

答案 0 :(得分:1)

您可以使用strip_tags函数 http://php.net/manual/ru/function.strip-tags.php

答案 1 :(得分:1)

strip_tags可用于此目的。您也可以跳过一些您不想被剥离的标签。示例代码:

<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "\n";

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>

答案 2 :(得分:1)

修复方法是使用html_entity_decode()

感谢您的帮助!