codeigniter で TinyMCE でコンテンツエントリを作成しています。ただし、出力ソースは次のようになり、< と > が表示されません。代わりに、&lessthan; のような HTML エンティティが表示されます。とより大きいです。等
エントリは、ログイン後に管理者によって作成されます。
出力はデータベースから取得されます。
モデルでエスケープを取り出しましたが、それでも同じことを行います。
また、構成設定 $config['global_xss_filtering'] = FALSE; があります。
そこで、html_entity_decode を追加したいと思います。しかし、$page_data は配列です。配列には、ページ アイテムに使用される ID、タイトル、コンテンツ、スラッグがあります。
誰か教えてください。
出力例:
<p><img src="images/icon1.png" border="0"
alt="icon" width="48" height="48" />
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
モデルコード:
<?php
class Pagemodel extends Model
{
....
...
/**
* Return an array of a page — used in the front end
*
* @access public
* @param string
* @return array
*/
function fetch($slug)
{
$query = $this->db->query("SELECT * FROM `pages` WHERE `slug` = '$slug'");
return $query->result_array();
}
...
...
}
?>
コントローラーコード:
function index()
{
$page_slug = $this->uri->segment('2'); // Grab the URI segment
if($page_slug === FALSE)
{
$page_slug = 'home';
}
$page_data = $this->pages->fetch($page_slug); // Pull the page data from the database
if($page_data === FALSE)
{
show_404(); // Show a 404 if no page exists
}
else
{
$this->_view('index', $page_data[0]);
}
}