fonction ereg

Répondre
nonoche
le 17/06/2005 à 14:41
nonoche
Bonjour j'aimerai vérifier si un champ comprend bien 6 numéros compris entre 1 et 49 séparés par des tirets mais avec ceci, ca ne fonctionne pas:

ereg("(([0-4]{0,1})([0-9]{1})+\-){6}",$grille))

Quelqu'un peut-il me dire ou est mon erreur ?

Merci
zebden
le 17/06/2005 à 14:45
zebden
Donne la synthaxe exacte que tu veux verifier.
zebdinou pour les intimes / Blog : http://www.zebden.fr
nonoche
le 17/06/2005 à 14:53
nonoche
Bah je peux pas le savoir c'est des personnes qui vont rentrer des numéros, c'est une loterie, il y a un champ text avec attribut readonly mais si tu enregsitre le tout sur ton pc avec le js tu peux modifier facilement les conditions.
DOnc je peux aussi bien rentrer

12-25-2-45-12-49 (grille exact, les nummeros sont compris entre 1 et 49).

12-52-85-20-96 (grille fausse, pas le nombres de numéros souhaités et depassement du numero 49).
Bzh
le 17/06/2005 à 16:58
Bzh
Donc si j' ai bien compris:

un nombre de 1 à 49 répété plusieurs fois et séparé par '-'

sa donera de mémoire:

^([1-49]-){1,}[1-49]$


ou

^[[1-49]-]{1,}[1-49]$


Je suis pas sur...
mojorisin
le 17/06/2005 à 20:19
mojorisin
Bzh : nan c'est pas bon :)
Essaies avec ça :
preg_match_all(!(0?[1-9]|[1-4][0-9])\-?!,$champs,$reg);
fais un print_r($reg) pour voir les captures et lis la doc sur preg_match_all pour savoir comment exploiter les données capturées.
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
Bzh
le 17/06/2005 à 21:31
Bzh
Mais pourquoi se compliquer la vie avec preg_match_all() ???

un simple ereg() suffi amplement !!!
mojorisin
le 18/06/2005 à 10:14
mojorisin
Parceque les expressions régulières Perl sont plus rapide :)
echo ’16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlbxq’|dc
nonoche
le 18/06/2005 à 20:13
nonoche
Bein merci les emcs j'essaye ça lundi et j'vous dit ce qu'il en ai!
nonoche
le 20/06/2005 à 10:01
nonoche
J'obtient ca: Parse error: parse error, unexpected '[' in /var/www/ouah_fr/loterie/validation.php on line 13
Répondre
LoadingChargement en cours