Bonjour,
Je souhaite filtrer une plage ip allant de 66.249.65.1 à 66.249.65.99
Cela fait un bout de temps que je me prend la tête dessus mais je n'y arrive pas
Quelqu'un peut il m'aider pour le regex ?
Merci d'avance
Bonjour,
Je souhaite filtrer une plage ip allant de 66.249.65.1 à 66.249.65.99
Cela fait un bout de temps que je me prend la tête dessus mais je n'y arrive pas
Quelqu'un peut il m'aider pour le regex ?
Merci d'avance
Peux-tu nous montrer ce que tu as déjà fait qu'on te dise ce qui ne va pas ?
J'ai fait un truc barbare
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if (ereg('66.249.65', $_SERVER['REMOTE_ADDR'])) { echo "NON AUTORISE"; }
Il faut protéger les points dans ton expression.
Cpednant tu aurais du consulter la documentation :
- il faut utiliser preg_match() au lieu de ereg()
- il faut utiliser strpos() ou strstr() au lieu de preg_match quand on veut juste trouver une chaine.
Quesako ??????Il faut protéger les points dans ton expression.
preg_match() ou strpos() ou strstr() ca en fait du monde ...
strstr() --> Trouve la première occurrence dans une chaîne
Je ne voie pas en quoi cela peut mettre utile ????
strpos() --> Trouve la position d'un caractère dans une chaîne
Alors encore moins ?????
preg_match() Oui bien sur mais si je savais le faire, je ne demanderai pas de l'aide non ?
si strstr() ou strpos() retourne FALSE, ta recherche n'est pas contenu dans la chaine.
Mais ca ne marche que si tu cherchais '66.249.65.' comme dans ton essai.
Ca vaut le coup d'essayer au moins non ?preg_match() Oui bien sur mais si je savais le faire, je ne demanderai pas de l'aide non ?
Attention l'expression reguliere dans preg_match doit être délimitée, dans la documentation par exemple ils utilisent /
Le point dans une expression régulière signifie n'importe quel caractère.Quesako ??????
Si tu veux indiquer le vrai symbole point il faut ecrire \.
Pense egalement a utiliser ^ pour indiquer le début de ton expression et $ pour la fin.
Partager