0

将表单字段中的输入保存到 sql 数据库 varchar(255)... 输入将类似于:

<a href="test.com">Author Name</a>

底线是它很可能在大多数情况下都有 html 标签。当我从数据库中检索和输出时,我得到如下信息:

&lt;a href=&quot;test.com&quot;&gt;Author Name&lt;/a&gt;

由于这应该作为 html 回显,因此它不会在页面上正确显示。也许我只是累了,但我不知道如何将其输出为非编码,以便浏览器正确读取。

4

2 回答 2

0

试试这个:

<?php
    echo htmlspecialchars_decode("&lt;a href=&quot;test.com&quot;&gt;Author Name&lt;/a&gt;");
?>

为什么要在插入数据库之前对 html 标签进行编码?

于 2012-11-01T06:55:17.243 回答
0
#Connect to the DB
$db = mysql_connect('localhost', 'root', '');

#Select the DB name
mysql_select_db('test');

#html tag contain in a string='$str'
$str='<a href="test'.'.com"'.'>Author Name</a>';

###insert query section ###

#Ask for UTF-8 encoding
mysql_query("SET NAMES 'utf8'");

#Set the Query
$sql = "INSERT INTO `test`.`code` (`name`) VALUES ('$str');";//Save it in a text row, that's it...

#Run the query
mysql_query($sql);

###fetching result###

#fetching required info from mysql
$sqlQuery1 = "SELECT * FROM `code` WHERE `name` LIKE '$str'";

$result1 = mysql_query($sqlQuery1);  //order executes                                                                                  
$row1 = mysql_fetch_array($result1);
if( $row1){    
echo $row1['name'] ;
}

#HOPE THIS HELP YOU ALOT
于 2012-11-01T07:45:01.353 回答