2016-05-18 1 views
0

J'ai créé un menu déroulant dans lequel je souhaite que soit vide, ® ou ™ pour être inséré dans mon champ db.Echapper d'une entité html à l'intérieur de html

 <select name="copyright_symbol" id="copyright_symbol"> 
      <option value='' {if !isset($product->copyright_symbol or $product->copyright_symbol == '')}selected="selected"{/if} >{l s='None'}</option> 
      <option value='&reg;' {if $product->copyright_symbol == '&reg;' }selected="selected"{/if} >{l s="reg"}</option> 
      <option value='&trade;' {if $product->copyright_symbol == '&trade;' }selected="selected"{/if} >{l s="trade"}</option> 

     </select> 

Ce convertit automatiquement ma valeur au symbole ® ou ™. Je ne veux pas enregistrer le symbole, je veux les caractères littéraux dans la base de données. Des pensées sur échapper à l'entité html? Merci

+0

double possible de [Comment afficher le code HTML (entités) sur une page Web?] (http://stackoverflow.com/questions/1394617/how-do-i-display-html-code-entities-on-a-web-page) –

Répondre

1

Si un caractère a une signification particulière en HTML et que vous voulez qu'il soit traité comme des données au lieu d'avoir cette signification particulière, alors vous le représentez comme une entité.

Donc, si vous voulez & signifie une esperluette au lieu de début d'une entité, représentent alors comme une entité: &amp;

value='&amp;reg;' 
+0

J'ai essayé ceci mais le champ de base de données a toujours le symbole – Trey

+0

Il affiche correctement maintenant dans le côté html, mais pas quand je vois le champ dans mysql – Trey

+0

C'est parce que les spectacles de MySQL vous le texte et le HTML vous montre ce qui se passe lorsque vous analysez le texte en HTML. – Quentin