2017-12-28 22 views
-1

wordpress/woocomerceからすべてのデータを取得して置き換えたいものもありますが、実際のHTMLは取得できません。置き換えられます。ここに私のコード:MySqlからすべてのHTMLを配列に変換しますが、レンダリングされたコードはありません

$connは、私がデータベースから実際の保存されたHTMLを取得するにはどうすればよい

$query = "SELECT post_content FROM wp_posts";  
$result = $conn->query($query); 
$data = mysqli_fetch_all($result,MYSQLI_ASSOC); 

print_r($data); // this shows me all the data, but it is already processed and not the raw html which is stored into the database 

をMySQLへの私の接続ですか?私はソースビューを取得するときに私はそれを海ができます。

+1

あなたは彼が '<'や '>'シンボルとブラケットをマークアップ置き換えない限り、HTMLは常にレンダリングされます。 anwersため –

+0

感謝は: ​​ レノボ が、私は私の配列にのみ レノボ を得る - しかし、私はすべてのコードが必要になりますように保存されています。 – Marius

答えて

0

HTMLをエスケープして、レンダリングをにするには、値にhtmlentities()を使用します。出力時に

あなたはこれを行うことができます。それ以上

<?php 
// perhaps in some loop 
echo htmlentities($row['post_content']); 
?> 

またはループを最初に、あなたは(しますprint_rしようとしている場合)には:/

<?php 
$data = [ 
    ['post_content' => '<div id="foo"></div>'], 
    ['post_content' => '<div id="bar"></div>'], 
]; 

array_walk($data, function(&$value, $key) { 
    $value['post_content'] = htmlentities($value['post_content']); 
}); 

print_r($data); 

結果:https://3v4l.org/aD33U

Array 
(
    [0] => Array 
     (
      [post_content] => &lt;div id=&quot;foo&quot;&gt;&lt;/div&gt; 
     ) 

    [1] => Array 
     (
      [post_content] => &lt;div id=&quot;bar&quot;&gt;&lt;/div&gt; 
     ) 

) 

の更新(すべてのHTMLタグを取り除く)

<?php 
$data = [ 
    ['post_content' => '<td><b> Lenovo </b></td>'], 
    ['post_content' => '<td><b> Dell </b></td>'], 
]; 

array_walk($data, function(&$value, $key) { 
    $value['post_content'] = trim(strip_tags($value['post_content'])); 
}); 

print_r($data); 

結果:https://3v4l.org/D1lfp

Array 
(
    [0] => Array 
     (
      [post_content] => Lenovo 
     ) 

    [1] => Array 
     (
      [post_content] => Dell 
     ) 

) 
+0

ここで私はhttps://stackoverflow.com/questions/35218019/how-to-render-html-tags-from-mysql-database-in-phpを見つけました。それは理論的に私の質問にかなり答えていますが、どうすれば私はそれをすべてキャッチして以来、私は今、私の配列に生のhtmlを取得します。 'echo $ data ['post_content'];' それはうまくいきませんでした。配列はNULLです – Marius

+0

これはあなたの質問に賛成です、strip_tags()を使うとHTMLからタグを取り除きます欲しいです?更新を参照してください。 –

+0

申し訳ありませんが混乱します。私は何も剥がさずにテーブルからコードをレンダリングしたくないので、DB内で直接クエリーを実行したときと同じように表示する必要があります。すべてのタグなどは..... – Marius

関連する問題