-
Soucis de code PHP
Bonjour à tous,
J'ai une question à propos de ce code:
Code:
$b=mysql_real_escape_string(strip_tags(htmlentities($a)));
le mysql_real_escape_string est obligatoire pour un formualaire, mais rajouter le strip_tags est il neccessaire, à cause du htmlentities?
de plus, je veut rajouter du md5 pour le mot de passe:
Code:
$b=mysql_real_escape_string(strip_tags(htmlentities(md5($a))));
cette forme ne fonctionne pas,
celle ci oui:
Code:
$b=md5(mysql_real_escape_string(strip_tags(htmlentities($a))));
peut il y avoir des soucis dans cette dernière?
Merci
-
Si tu veux utiliser md5(), tu n'as besoin que de lui.
Si tu veux utiliser strip_tags() il faut le faire avant htmlentities(), sinon bien sur il ne fait rien.
mysql_real_escape_string() s'utilise pour insérer des données dans une requête.
htmlentities() pour afficher des données dans une page HTML.
Les deux ne vont pas l'un avec l'autre.
-
ok merci, je comprends mieux maintenant ^^
donc pour se protéger des caractères spéciaux (lors d'un envoie de formulaire) y'a juste à utiliser mysql_real_escape_string?
-
Pour empecher l'injection SQL dans une chaine de caractère, mysql_real_escape_string() est suffisant.
On peut aussi chercher a nettoyer la chaine en utilisant strip_tags()