HTML关闭标签打印在我的页面中

时间:2012-09-05 05:48:43

标签: php html

数据库$description中的数据或值

<div><a href="www.google.com">Henry</a></div>

我的HTML代码

<input type="textbox" id="textbox" value=""/>
<input type="hidden" id="hidden" value="<?php echo $description; ?>"/>

输出:
My Output

如果代码是

<input type="hidden" id="hidden" value='<?php echo $description; ?>'/>

它的工作正常!..有人请告诉我这个问题吗?

7 个答案:

答案 0 :(得分:1)

您是否尝试在表单中的隐藏输入值中包含HTML代码?这听起来不对。

如果您需要保持原样,至少应使用htmlentities使其成为字符串:

<input type="hidden" id="hidden" value="<?php echo htmlentities($description); ?>"/>

一个例子:

<?php
$str = "A 'quote' is <b>bold</b>";

// Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);

// Outputs: A &#039;quote&#039; is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str, ENT_QUOTES);
?>

答案 1 :(得分:1)

看看“和'之间的差异:

如果您的代码是:

 $description = <div><a href="www.google.com">Henry</a></div>

 <input type="hidden" id="hidden" value="<?php echo $description; ?>"/>

所以它实际上意味着

  <input type="hidden" id="hidden" value="<div><a href="www.google.com">Henry</a></div>"/>

和“在url关闭”值之前的那个,所以值实际上是 -

  value="<div><a href="

所以尝试在网址(谷歌)上使用'代替'或在值中使用'(而不是两者)。

答案 2 :(得分:1)

你的代码就像这样......

<input type="hidden" id="hidden" value = "<div><a href="www.google.com" > Henry </a></div> "/>

你可以把它分成......

<input type="hidden" id="hidden" value = "<div><a href="www.google.com" >

Henry

</a></div>

"/>

这就是你得到的Henry"/>

答案 3 :(得分:1)

这里有2个问题,

  1. 首先使用htmlentities将所有适用的字符转换为HTML实体。

    htmlentities($description);
    
  2. 使用单引号代替双引号是公平的。参考link

      

    默认情况下,SGML要求使用双引号(ASCII十进制34)或单引号(ASCII十进制39)分隔所有属性值。当值由双引号分隔时,单引号可以包含在属性值中,反之亦然

答案 4 :(得分:1)

这是您的浏览器查看代码的方式:

<input type="textbox" id="textbox" value="<div><a href="www.google.com">Henry</a></div>
"/>

看看双引号怎么没有意义?

如果您想保留双引号,则需要使用htmlentities

$description = htmlentities($description);

<input type="hidden" id="hidden" value="<?php echo $description; ?>"/>

此外,您的链接“www.google.com”将指向名为www.google.com RELATIVE的页面到您的目录。请务必使用ABSOLUTE路径:http://www.google.com

答案 5 :(得分:0)

像这样简单替换

<div><a href='www.google.com'>Henry</a></div>

或者像这样

<input type="textbox" id="textbox" value=""/>
<input type="hidden" id="hidden" value='<?php echo $description; ?>'/>

两者都可以解决问题。

答案 6 :(得分:0)

http://php.net/manual/en/function.strip-tags.php

试试这个:

div><a href='www.google.com'>Henry</a></div>

<input type="textbox" id="textbox" value=""/>
<input type="hidden" id="hidden" value='<?php echo strip_tags($description); ?>'/>