Ereg Php
ZaO67
-
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjours, j'ai un probléme avec la fonction Ereg de php
Je voudrai faire un ereg qui accepte uniquement les caractere: A-Za-z0-9 le tiret et l'undescor
le tout utiliser avec un if voila un bout du code en question:
if (ereg("ICI JE BLOQUE",$_POST["name_new"]))
{
echo "post name new ne contien que des caractere alphanumerique tiret et undescor";
}
else
{
echo "erreur";
}
merci pour votre aide
Je voudrai faire un ereg qui accepte uniquement les caractere: A-Za-z0-9 le tiret et l'undescor
le tout utiliser avec un if voila un bout du code en question:
if (ereg("ICI JE BLOQUE",$_POST["name_new"]))
{
echo "post name new ne contien que des caractere alphanumerique tiret et undescor";
}
else
{
echo "erreur";
}
merci pour votre aide
10 réponses
-
Salut,
tu ne dois faire plutôt comme çaif (ereg("[-a-zA-Z0-9_]",$_POST["name_new"])) { echo "post name new ne contien que des caractere alphanumerique tiret et undescor"; } else { echo "erreur"; }lami20j -
Re,
j'ai oublié le quantificateur +
Tu peux tester ta regexi ici http://www.quanetic.com/regex.php ou https://www16.qth.com/404.htm ou http://www.annuaire-info.com/expression-reguliere.html
lami20j -
Re,
pour les caractères é è ê ë à â ä î ï ô ö (en code ascii étendue)
Tu peux utiliser des classes de caractères spéciales sinon la laide
[a-z0-9_ éèêëàâäîïôö-]+ avec un modificatuer pur ne prendre en compte la casse.
lami20j -
Re,
tu n'utilises que [a-z0-9_ éèêëàâäîïôö-]+ mais avec eregi à la place de ereg
donc pas de A-Z et les autre en majuscule, c'est eregi qui s'occupe.
lami20j -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Salut,
essaie çaif (eregi("^[a-z0-9_\xC0-\xFF-]+$",$_POST["name_new"]))lami20j -
Re,
en bref j'utilise une classe en me basant sur la répresentation en hexadécimale pour les caractères avec accent
J'ai ajouté dans la ligne de commande et pour ne pas être obligé le faire à la main icilami20j@debian:~$ perl -e 'print "$_ => ${\(chr($_))} => ${\ (sprintf \"%0.2X\",$_) }\n" for 192..255' 192 => À => C0 193 => Á => C1 194 => Â => C2 195 => Ã => C3 196 => Ä => C4 197 => Å => C5 198 => Æ => C6 199 => Ç => C7 200 => È => C8 201 => É => C9 202 => Ê => CA 203 => Ë => CB 204 => Ì => CC 205 => Í => CD 206 => Î => CE 207 => Ï => CF 208 => Ð => D0 209 => Ñ => D1 210 => Ò => D2 211 => Ó => D3 212 => Ô => D4 213 => Õ => D5 214 => Ö => D6 215 => × => D7 216 => Ø => D8 217 => Ù => D9 218 => Ú => DA 219 => Û => DB 220 => Ü => DC 221 => Ý => DD 222 => Þ => DE 223 => ß => DF 224 => à => E0 225 => á => E1 226 => â => E2 227 => ã => E3 228 => ä => E4 229 => å => E5 230 => æ => E6 231 => ç => E7 232 => è => E8 233 => é => E9 234 => ê => EA 235 => ë => EB 236 => ì => EC 237 => í => ED 238 => î => EE 239 => ï => EF 240 => ð => F0 241 => ñ => F1 242 => ò => F2 243 => ó => F3 244 => ô => F4 245 => õ => F5 246 => ö => F6 247 => ÷ => F7 248 => ø => F8 249 => ù => F9 250 => ú => FA 251 => û => FB 252 => ü => FC 253 => ý => FD 254 => þ => FE 255 => ÿ => FF lami20j@debian:~$lami20j-
-
Salut,
C'est normal si tu utilise php 5.3.0 https://www.php.net/manual/en/function.eregi.php
Ici tu as les fonctions pour remplacer https://www.php.net/manual/en/reference.pcre.pattern.posix.php
Dans ton cas utilise preg-match
Plus bas dans la page tu as un exemple pour insensibilité à la case.
-
-
-
oui sa fonctionne par contre les caracetre du genre é ou à ne fonction pas! Comment doije proceder pour les faire fonctionner aussi? enfin tout se qui et: é è ê ë à â ä î ï ô ö je croit que c'est tout majuscule compris bien entandu
-
est bien je croit que ton code marche ^^ merci pour le coup de main j'était perdu
if (ereg("^[A-Za-z0-9_ éèêëàâäîïôö-]+$",$_POST["name_new"]))
Donc sa autorisée AZ az 09 tout les éè.... le - et le _ par contre il faut encore que je rajoute les Ê ou Ë enfin majuscule en gros c'est juste? -
if (eregi("^[a-z0-9_áàâäãåçéèêëìíîïñòóôöõöúùûüýÿ-]+$",$_POST["name_new"]))
voila j'ai mis tout ce que j'ai trouver pour ce que sa interesse
merci pour ton aide lami20j
a+