我有一个旧的数据库来维护....他们已经在那里存储了html标签数据库并且使用旧的mysql与php来获得outupt ...现在我正在尝试通过函数和PDO来获取输出。 ...没有得到正确的输出....它只是给html标签显示格式化段落...我怎么能解决它,这是我的代码 - >功能
function movie_page($name,$date){
global $host, $dbname, $user, $pass;
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$STH = $DBH->prepare("SELECT * FROM bh_movies WHERE name = ? and re_date = ?");
$STH->bindValue(1, "$name", PDO::PARAM_STR);
$STH->bindValue(2, "$date", PDO::PARAM_STR);
$STH->execute();
$STH->setFetchMode(PDO::FETCH_ASSOC);
return $STH;
}
,输出
$STH = movie_page($id,$date);
while (($row = $STH->fetch()) !== false) {
if ($row['actors'] !=''){
echo '<tr>
<td><h1><a href="movie_page.php?id='.$row['name'].'">'.$row['name'].'</a></h1></td>
<td>'.date('d-M-Y',$row['re_date']).'</td>
<td><a href="movie_page.php?id='.$row['name'].'">
<img src="'.$row['small_poster'].'" title="'.$row['name'].'" alt="'.$row['name'].'" height="97" width="182"/>
</a>
</td>
<td><a href="movie_page.php?id='.$row['a'].'">
<td>'.$row['actors'].'</td>
<td>'.$row['small_desc'].'</td>
<td>'.$row['big_desc'].'</td>
</tr>';
}
我在输出中获得了Html标签...而不是像这样的格式段落
<font color="green"><B><u>Characters</u></B></font><br><br> <B>Sonu Dilli (KKC)</B> Emraan Hashmi<BR><BR> Sonu Dilli is a streetsmart
请帮助
* INPUT来源 *
function insert_data(){
global $host, $dbname, $user, $pass;
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$STH = $DBH->prepare("INSERT IGNORE INTO bh_movies
(name, bh_link, re_date, small_poster, big_poster, small_desc, big_desc, actors)
value (:name, :bh_link, :re_date, :small_poster, :big_poster, :small_desc, :big_desc, :actors)");
return $STH;
}
答案 0 :(得分:5)
您的数据在某些时候正在转换为HTML实体。要么找到它被转换的点(可能使用htmlspecialchars()
),要么在数据来自数据库时解码数据(使用htmlspecialchars_decode()
)。
答案 1 :(得分:0)
html_entity_decode()用于解析数据库中的HTML。