Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Escape Quote dans zone commentaire

12 réponses
Avatar
Josselin
dans un formulaire, dont les infos sont envoyées par courrier, j'ai
une zone de commentaires
le message est envoyé par la fonction suivante :

function MAIL_NVLP($fromname, $fromaddress, $toname, $toaddress,
$subject, $message)
{
// Copyright  2005 ECRIA LLC, http://www.ECRIA.com
// Please use or modify for any purpose but leave this notice unchanged.
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\n";
$headers .= "X-Priority: 3\n";
$headers .= "X-MSMail-Priority: Normal\n";
$headers .= "X-Mailer: php\n";
$headers .= "From: \"".$fromname."\" <".$fromaddress.">\n";
return mail($toaddress, $subject, $message, $headers);
}


pas de problèmes à l'arrivéeavec les caractères accentués ou spéciaux
.. tout s'affiche comme il faut,
MAIS dès qu'il y a un apostrophe (') celui-ci apparait avec un Escape
(\) devant...
Il y a-t-il un moyen de faire disparaitre ce caractère affiché à l'arriivée ?
sûrement un paramètre à donner dans $headers , mais lequel ?

merci à l'avance de vos infos

Joss

2 réponses

1 2
Avatar
Patrick Mevzek
[magic_quotes]
C'est une *absurdité* de PHP qui a été implémentée pour les newbies
"pour protéger le code contre les trous de sécurité". Mais personne
n'avertit ces débutants que cette fonction est activée par défaut. Cela
s'appelle les "guillemets magiques", et ca fait un addslashes sur tous
les GET/COOKIE/POST automatiquement. Personnellement, j'ai passé toute
une nuit en m'arrachant les cheveux en cherchant pourquoi mes données
étaient toutes échappées.


Vous allez pouvoir «prochainement» les re-inplanter (vos cheveux) :
cette fonctionnalité sera supprimée en PHP 6.

Je me prépare à me marrer d'avance de lire la réponse de ceux qui
croient que magic_quotes résout le problème des injections SQL. Ils
feront quoi en PHP 6 ?
(probablement en refaisant la même chose, à grand coup de boucle sur les
clefs de $_GET/$_POST/$_REQUEST/$_COOKIE et de addslashes())

Dans la même veine register_globals va disparaître, ce qui ne solicite
qu'un commentaire : ENFIN !

Pour d'autre informations : http://www.php.net/~derick/meeting-notes.html

--
Patrick Mevzek . . . . . . Dot and Co (Paris, France)
<http://www.dotandco.net/> <http://www.dotandco.com/>
Dépêches sur le nommage <news://news.dotandco.net/dotandco.info.news>

Avatar
Florian Sinatra
*Patrick Mevzek* @ 15/03/2006 08:29 :
Vous allez pouvoir «prochainement» les re-inplanter (vos cheveux) :
Ca tombe bien, je commençais à me les cailler..


cette fonctionnalité sera supprimée en PHP 6.
Et il est prévu pour quand ?


Je me prépare à me marrer d'avance de lire la réponse de ceux qui
croient que magic_quotes résout le problème des injections SQL. Ils
feront quoi en PHP 6 ?
(probablement en refaisant la même chose, à grand coup de boucle sur les
clefs de $_GET/$_POST/$_REQUEST/$_COOKIE et de addslashes())

Dans la même veine register_globals va disparaître, ce qui ne solicite
qu'un commentaire : ENFIN !

Pour d'autre informations : http://www.php.net/~derick/meeting-notes.html
Excellent, merci ! On constate effectivement que nombre de

fonctionnalités superflues vont être supprimées. On ne peut que se réjouir !

1 2