Bonjours à tous et à toutes.
Je reviens de php.net et je suis un peu paumé par rapport à toutes les commandes de sécurisation de variable, entre htmlspecialschars, htmlentites, mysql_......
Donc voila, je vais définir quelques situations, et je voudrais juste savoir si j'ai choisie les bonnes fonctions pour ça =)
Pour chaque situations, la première ligne serra pour l'enregistrement (E: -> mysql_query(....), la seconde serra pour l'affichage (A: -> echo ...).
Ps: oublions que les magics quotes existent pour ce cas
1) Une variable de pseudo (alphanum + "-" + "_")
2) Un variable de mot de passe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 E: regex "preg_match('#^[0-9A-Za-z-_]*$#',$var)" //et si ça passe-> mysql_real_escape_string($var) A: htmlentities($donnees['var'], ENT_QUOTES) //($donnees ou $_POST)
//Je préfère ne sélectionner que le nom d'utilisateur dans la table et vérifier le pass par la suite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 E: md5($var) [ça suffis ?] A : if($donnees['var'] == md5($_POST['pass']))
3) Une chaine de caractère sans html interprété (style chat)
4) Une chaine de caractères html (partiel) autorisé (style forum)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 E: mysql_real_escape_string($var) A: htmlentities($var, ENT_QUOTES)
5) une chaine de caractère html (complet) autorisé (style backend news (editeur WYSIWYG))
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 E: mysql_real_escape_string(stiptags(bbcode($var))) A: bbcode_decode(stripslashes($var)); //bbcode() & bbcode_decode() -> fonction perso qui remplace les balises autorisées en bbcode
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 E: mysql_real_escape_string(htmlentities($var)) A: html_entity_decode(stripslashes($var)) [ou htmlspecialchars là ?]
Si vous voyez d'autre situations, ou que vous avez d'autre conseil, je suis preneur
Merci d'avance
Edit: ah ouais, et aussi: pour faire un cookie "sur" il faut faire un id compliqué.
un truc du genre:
Vous parrait il correct ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part sha1(md5($user['ip_denregistrement']).$user['password'].md5($user['date_denregistrement']))






Répondre avec citation
Partager