2016-09-01 5 views
0

私はangularJSで新しいプロジェクトを構築しています。バックエンドはMySQLを使用したPHPです。 PHP APIは正面に表示する必要がある角度のデータを返します。angularJS&php- HTMLタグがデコードされない

しかし、HTMLタグは私のウェブサイトではデコードされません。 Thayはそのように表示されます。 phpfiddle.orgで同じことを試してみると、うまくいきます。

ユーザーは、このような何かWYSIWYGエディタを介してデータを送信し、それをデータベーステーブルに保存されます。

<p>dfgdfgdfgfd</p><p><br/></p><p>dg</p><p>d</p><p>g</p><p><span class="rangySelectionBoundary" id="selectionBoundary_1472644203224_7186990890070339"></span>df<span class="rangySelectionBoundary" id="selectionBoundary_1472644203224_09491296280590866"></span></p><p><span class="rangySelectionBoundary" id="selectionBoundary_1472644197601_045958185758413816"></span>g<span class="rangySelectionBoundary" id="selectionBoundary_1472644197601_8700155449427347"></span><br/></p> 

次のことを私はそれがフロントエンドにデータを返す前に、PHPでHTMLを復号化するために使用される方法です。

<?php 
$valueFromDB= "&lt;p&gt;dfgdfgdfgfd&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;dg&lt;/p&gt;&lt;p&gt;d&lt;/p&gt;&lt;p&gt;g&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;rangySelectionBoundary&quot; id=&quot;selectionBoundary_1472644203224_7186990890070339&quot;&gt;&amp;#65279;&lt;/span&gt;df&lt;span class=&quot;rangySelectionBoundary&quot; id=&quot;selectionBoundary_1472644203224_09491296280590866&quot;&gt;&amp;#65279;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;rangySelectionBoundary&quot; id=&quot;selectionBoundary_1472644197601_045958185758413816&quot;&gt;&amp;#65279;&lt;/span&gt;g&lt;span class=&quot;rangySelectionBoundary&quot; id=&quot;selectionBoundary_1472644197601_8700155449427347&quot;&gt;&amp;#65279;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;"; 

$decoded = html_entity_decode(htmlspecialchars_decode($valueFromDB,ENT_QUOTES)); 

echo $decoded; 
?> 

これはフィドルで動作しますが、実際のウェブサイトでは、これは見た目です。

enter image description here

それはフィドルで動作する場合には、ウェブサイトで働いていないのはなぜ?

+3

角度テンプレートの表現は使用しないでください({{}}など)。 ** ng-bind-html **属性 – Sandeep

+0

を使用してください。ここで回答が見つかりました:http://stackoverflow.com/questions/26064309/decode-html-entity-in-angular-js – Annabelle

答えて

3

あなたは、このディレクティブは、角度-サニタイズを必要とNG-バインドHTML

<div ng-bind-html="queryResult"></div> 

を使用してみてください、その後、角度の$ HTTPを使用してクエリ結果を印刷しようとしている場合。

関連する問題