Problème pour regex formulaire [Résolu]

Signaler
Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018
-
Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018
-
Ola, et Ola Jordane45 si tu passe par là! :)

Bon alors je vais faire court: j'ai un formulaire qui récupère des infos, un ID, une chaîne de caractère "sauce", une chaîne de caractère "option", ensuite boisson (oui ou non) donc ça ok, et la qtée (ça ok). Bémol, le regex option chie! Une idée?

Code: commande_creator.php

if ( preg_match ( " #^[a-zA-Z ]{3,16}$# " , $sauce ) ){
echo "sauce ok blablabla";
} else {
header('Location: ../shop.php?var_shop=regex_sauce');
exit;
}

if ( preg_match ( " #^[a-zA-Z ]$# " , $option ) ){
echo "option ok blablabla";
} else {
header('Location: ../shop.php?var_shop=regex_option');
exit;
}

if ( preg_match ( " #^[a-z]{3}$# " , $boisson ) ){
echo "boisson ok blablabla";
} else {
header('Location: ../shop.php?var_shop=regex_boisson');
exit;
}

if ( preg_match ( " #^(^[0-9])$# " , $qty) ){
echo "qty ok blablabla";
} else {
header('Location: ../shop.php?var_shop=regex_qty');
exit;
}

2 réponses

Messages postés
28109
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
8 avril 2020
325
Bonjour,

Que contient ta chaine $option ?
As tu essayé ta regexp ? par exemple ici : https://regex101.com/

Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018

Nice merci pour le site. Et bien l'option contient: " Sans tomate ". Ou autre! Je suis toujours sur le site de foodtruck et je valide toutes les entrées etc...

edit

J'ai test de match plein de regex avec la phrase: "Pas d'option" par exemple. Aucune ne fonctionne.. hmm
Messages postés
28109
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
8 avril 2020
325 >
Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018

dans "Pas d'option" ..; tu as un P majuscule et une apostrophe .... normal que ta regex ne marche pas !
Par contre avec celle la ça devrait fonctionner :

^[a-zA-Z \']*$


Et si tu as un "!" .. il faut aussi l'ajouter dans la regex

^[a-zA-Z \'!]*$

..etc...

A toi de voir ce dont tu as besoin.
Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018

Re dsl de répondre tard, finalement j'ai fais comme ça cette aprem:
 #^[a-zA-Z' ,-.]+$# 
Messages postés
14478
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
8 avril 2020
374
Bonjour,

Peux tu donner une chaîne représentative de ce que tu auras en entrée et le résultat que tu escomptes?
Messages postés
13
Date d'inscription
mardi 12 septembre 2017
Statut
Membre
Dernière intervention
21 février 2018

Ola, merci pour la reponse, mais grace au site regex101 j'ai fini toute mes regex cette aprem! :)