2009-07-07 5 views
1

J'ai envoyé un texte via la méthode GET pour décoder les entités html (w = w )Comment puis-je envoyer un texte d'entités html via la méthode GET en PHP?

> ?text=w&type=htmldecode&format=text 

J'ai eu des erreurs dans la variable $ texte alors j'ai essayé de le mettre dans le dernier du lien

?format=text&type=htmldecode&text=w 

et je eu les mêmes erreurs

comment puis-je résoudre ce problème?

Répondre

3

Il existe 2 types de codage pertinents à votre problème. HTML escape characters et URL escape chars. Lorsque vous avez un caractère dans une page HTML, vous utilisez les caractères d'échappement HTML.

par exemple

w = w

Mais vous ne pouvez pas utiliser ces caractères dans une URL - & et # ont une signification particulière dans les URL. Vous devez donc encoder à nouveau - cette fois en utilisant des caractères d'échappement d'URL.

# = %23

& = %26

; = %3B

Ainsi, votre chaîne, ('w') apte à être mis dans une URL, serait:

%23%26119%3B

et votre toute la chaîne de requête:

Le

?text=%23%26119%3B&type=htmldecode&format=text?text=%23%26119%3B&type=htmldecode&format=text

l'urlencode PHP() ci-dessus fait cela.

L'extrait:

<?php echo urlencode("&#119;"); ?> 

sorties

%26%23119%3B

2

Je pense que vous avez besoin de le décoder puis ré-encoder en utilisant URL encodage urlencode