[php htmlentities et addslaches]
walid
-
PhP Messages postés 1770 Date d'inscription Statut Membre Dernière intervention -
PhP Messages postés 1770 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Afin de formatter les données d'un formulaire avant leur envoi dans une base mysql, j'effectue les opérations suivantes :
1- htmlentities : Pour interdire le code php & html
2- addslaches : pour éviter les ambiguités dus aux caractères spéciaux.
Résultat : Je m'apercois que addslaches n'a aucun effet sur une chaine ayant déjà subi htmlentities. Est ce normal?
Si oui, dois-je effectuer addslaches avant htmlentities ou je me contente de htmlentities?
D'avance Merci.
Afin de formatter les données d'un formulaire avant leur envoi dans une base mysql, j'effectue les opérations suivantes :
1- htmlentities : Pour interdire le code php & html
2- addslaches : pour éviter les ambiguités dus aux caractères spéciaux.
Résultat : Je m'apercois que addslaches n'a aucun effet sur une chaine ayant déjà subi htmlentities. Est ce normal?
Si oui, dois-je effectuer addslaches avant htmlentities ou je me contente de htmlentities?
D'avance Merci.
A voir également:
- [php htmlentities et addslaches]
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
3 réponses
Bah oui, c'est normal :)
Le mieux est d'appliquer le htmlentities seulement à l'affichage sur ta page et donc ne pas l'enregistrer dans ta base comme ça.
Et pour échapper les quotes, il est préférable d'utiliser un mysql_real_escape_string() plutôt qu'un addslashes.
http://fr3.php.net/manual/fr/function.mysql-real-escape-string.php
Le mieux est d'appliquer le htmlentities seulement à l'affichage sur ta page et donc ne pas l'enregistrer dans ta base comme ça.
Et pour échapper les quotes, il est préférable d'utiliser un mysql_real_escape_string() plutôt qu'un addslashes.
http://fr3.php.net/manual/fr/function.mysql-real-escape-string.php
bsr
Non c'est plutôt au niveau de l'entête de ta page HTML qu'il faut agir
Ex
une page codé en ISO-8859-1 (le type par défaut que j'utilise pour coder en français)
la même page codée en UTF-8 : les caractères ne sont plus affichés comme il faut
Non c'est plutôt au niveau de l'entête de ta page HTML qu'il faut agir
Ex
une page codé en ISO-8859-1 (le type par défaut que j'utilise pour coder en français)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> </head> <body> Ceci est un texte accentué<br /> Le symbole des mails : @ <br /> Le symbole qui nous coûte cher : € !<br /> </body> </html>
la même page codée en UTF-8 : les caractères ne sont plus affichés comme il faut
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> Ceci est un texte accentué<br /> Le symbole des mails : @ <br /> Le symbole qui nous coûte cher : € !<br /> </body> </html>
Salut à tous.
J'ai un "soucis", je fais actuellement la mise d'un site web qui tourne sur un serveur apache sous php et je rencontre un problème concernant l'affichage des des lettres avec accents. Dois je utiliser addslaches pour cela? Sinon, quelle est la fonction qui me permettra de résoudre cela? Merci.
J'ai un "soucis", je fais actuellement la mise d'un site web qui tourne sur un serveur apache sous php et je rencontre un problème concernant l'affichage des des lettres avec accents. Dois je utiliser addslaches pour cela? Sinon, quelle est la fonction qui me permettra de résoudre cela? Merci.