SÉCURISATION DE FORMULAIRE

Signaler
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
-
lighta971
Messages postés
1
Date d'inscription
samedi 24 juillet 2010
Statut
Membre
Dernière intervention
3 août 2010
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51917-securisation-de-formulaire

lighta971
Messages postés
1
Date d'inscription
samedi 24 juillet 2010
Statut
Membre
Dernière intervention
3 août 2010

Autre méthode...

<?php
$erreur = null;
$success = null;
if(!preg_match('#^[a-z0-9\-_]+$#i'$_POST['value1'])) // 1er variable: caractères autorisés, lettres - chiffres - underscores - tirets
{
$erreur = 0;
}
else if(!preg_match('#^[a-z]+$#i'$_POST['value2'])) //2eme variable: caracteres autorisés, lettres
{
$erreur = 0;
}
// else if...
if(empty($erreur)) { // si $erreur toujours null, alors il n'y a pas eu d'erreur donc les variables sont clean
$success = 1
//si requete sql, aouter mysql_real_escape_string
}
echo $success.$erreur; // affichage des resultats, null (si le script n'a pas été exécuté)
?>
cs_ghuysmans99
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
11
Ah ben je savais pas. Je pensais que comme en ASP3, plusieurs requêtes pouvaient être exécutées.
Arto_8000
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
5
ghuysmans99 -> mysql_query ne permet pas d'avoir plusieurs requêtes en même temps, ça va juste de sortir un exception si tu essaies de faire ça.
cs_ghuysmans99
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
11
Et pas que des SELECT. Tu entres ça sans les crochets ['or 'a'='a';DELETE * FROM Users WHERE 'a'='a] et ça te fout en l'air ta table (là ça marchera avec du MySQL si la requête du script est [SELECT * FROM Users WHERE user=$user AND pass=$pass;]