Partage
  • Partager sur Facebook
  • Partager sur Twitter

Une regex !!!

Est elle bonne ???

Sujet résolu
    26 novembre 2005 à 12:02:19

    Bonjour à tous :)
    J'ai "réalise une regex pour vérifier le bon format d'un avatar, seulement, je n'ai aucune idée de validité, donc j'en appele aux zéros pour avoir de l'aide:

    preg_match( "!^http://[a-Z0-9]$.png|.jpg|.gif!", $avatar)


    Voila, merci d'avance !!
    • Partager sur Facebook
    • Partager sur Twitter
      26 novembre 2005 à 12:04:04

      ba deja, la a-Z me parait mauvai non?
      faudrait pas plutot genre a-zA-Z0-9 ?

      ;)
      • Partager sur Facebook
      • Partager sur Twitter

      Défi Toulouse: jeux de piste sur Toulouse, en autonomie avec son smartphone

        26 novembre 2005 à 12:05:18

        Peut etre, je teste et je te dit cela, merci.
        • Partager sur Facebook
        • Partager sur Twitter
          26 novembre 2005 à 12:05:52

          Citation : Dr Xplosif²

          Bonjour à tous :)
          J'ai "réalise une regex pour vérifier le bon format d'un avatar, seulement, je n'ai aucune idée de validité, donc j'en appele aux zéros pour avoir de l'aide:

          preg_match( "!^http://[a-Z0-9]$.png|.jpg|.gif!", $avatar)



          Voila, merci d'avance !!



          Explique ce que tu souhaites réellement faire, parce que ce que tu as codé ne fonctionnera jamais. ;)
          • Partager sur Facebook
          • Partager sur Twitter
            26 novembre 2005 à 12:09:00

            Citation : Dr Xplosif²

            Bonjour à tous :)
            J'ai "réalise une regex pour vérifier le bon format d'un avatar, seulement, je n'ai aucune idée de validité, donc j'en appele aux zéros pour avoir de l'aide:

            preg_match( "!^http://[a-zA-Z0-9.-_].(png|jpg|gif)$!", $avatar)



            Voila, merci d'avance !!



            Perso, j'aurai plutôt fait comme ça ;).
            • Partager sur Facebook
            • Partager sur Twitter
              26 novembre 2005 à 12:09:24

              Je voulais vérifier la bonne extension de l'avatar lors de l'enregistrement, apparement, celle ci marche:

              preg_match( "!^http://[a-zA-Z0-9]$.png|.jpg|.gif!", $avatar)


              Merci à tous pour vos conseils ! C'est la premiere fois que je compose une regex donc voila, merci à tous.
              • Partager sur Facebook
              • Partager sur Twitter
                26 novembre 2005 à 12:13:11

                Citation : Dr Xplosif²

                Je voulais vérifier la bonne extension de l'avatar lors de l'enregistrement, apparement, celle ci marche:



                Pas besoin de regex pour vérifier une extension.
                substr, strchr et un array s'il y en a plusieurs.
                • Partager sur Facebook
                • Partager sur Twitter
                  26 novembre 2005 à 12:13:22

                  preg_match( "#^http://.*?[\.png|\.jpg|\.gif]$#si", $avatar)


                  devrait être plus adapté...
                  Toute fois le plus important est de checker le poid et la taille...
                  Le poid peut être tester avec les variable FILE met pour les dimmensions j'ai essayé une fois sans franc succès ^^

                  la régex :

                  url commence par http://
                  ^http://

                  elle peut être consitituer de "n'importe" quel caractère sur une longueur inconnue :
                  .*?

                  les extentions possibles, avec une extension par url...
                  [\.extention1|\.extension2]

                  pourquoi \. et pas . ?

                  Simple puisque on à rajouter "si"
                  Bon je ne sais plus lequel du S ou du I :D mais cela pemret de définir le cractère . comme n'importe quel caractère :)
                  d'où le .*? placé plutôt :)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 novembre 2005 à 12:18:08

                    Citation : Gectou4

                    preg_match( "#^http://.*?[\.png|\.jpg|\.gif]$#si", $avatar)



                    devrait être plus adapté...


                    les extentions possibles, avec une extension par url...
                    [\.extention1|\.extension2]

                    pourquoi \. et pas . ?

                    Simple puisque on à rajouter "si"
                    Bon je ne sais plus lequel du S ou du I :D mais cela pemret de définir le cractère . comme n'importe quel caractère :)
                    d'où le .*? placé plutôt :)



                    Tu racontes vraiment n'importe quoi ! :-°
                    • Partager sur Facebook
                    • Partager sur Twitter
                      26 novembre 2005 à 12:21:02

                      Bon !!! Elle est bonne ou pas Bison ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        26 novembre 2005 à 12:22:13

                        Citation : Gectou4

                        preg_match( "#^http://.*?[\.png|\.jpg|\.gif]$#si", $avatar)



                        devrait être plus adapté...
                        Toute fois le plus important est de checker le poid et la taille...
                        Le poid peut être tester avec les variable FILE met pour les dimmensions j'ai essayé une fois sans franc succès ^^

                        la régex :

                        url commence par http://
                        ^http://

                        elle peut être consitituer de "n'importe" quel caractère sur une longueur inconnue :
                        .*?

                        les extentions possibles, avec une extension par url...
                        [\.extention1|\.extension2]

                        pourquoi \. et pas . ?

                        Simple puisque on à rajouter "si"
                        Bon je ne sais plus lequel du S ou du I :D mais cela pemret de définir le cractère . comme n'importe quel caractère :)
                        d'où le .*? placé plutôt :)



                        Le "\" sert a echapper le point.
                        Dans une regex le point signifi : N'importe quel caractère .....
                        • Partager sur Facebook
                        • Partager sur Twitter
                          26 novembre 2005 à 12:22:49

                          Citation : Dr Xplosif²

                          Bon !!! Elle est bonne ou pas Bison ?


                          Celle donnée par Antoine, oui !

                          EDIT : Oups, non !
                          preg_match( "`^http://.*?\.(png|jpg|gif)$`", $avatar)

                          Par contre, je ne comprend pas pourquoi tu vas faire une vérif avec http ????
                          Si l'avatar est sur le Pc de l'internaute, ça le fera pas !!!!

                          Solution
                          Si tu tiens vraiment à utiliser une regex, fais comme ça :

                          $extension='jpg|jpeg|gif|png';
                          if(!preg_match('`\.'.$extension.'$`i',$avatar))
                          {
                          echo 'pas bon';
                          }
                          else
                          {
                          echo 'bon';
                          }
                          • Partager sur Facebook
                          • Partager sur Twitter
                            26 novembre 2005 à 12:49:29

                            Dans un premier temmps, l'avatar n'est utilisable que sur internet, l'upload ne viendra qu'après.
                            • Partager sur Facebook
                            • Partager sur Twitter
                              26 novembre 2005 à 13:13:09

                              essay la regex avec si sans echappement

                              :lol:
                              • Partager sur Facebook
                              • Partager sur Twitter
                                26 novembre 2005 à 14:13:27

                                Citation : Gectou4

                                essay la regex avec si sans echappement

                                :lol:


                                Arrête de raconter des conneries stp !
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  26 novembre 2005 à 14:51:35

                                  alors tu n'as donc toujours pa remarquer que "n'importe quel caractère" teu ton extension ?

                                  et qu'on peu donc charger une image http://url.com/cekejeuveupng tant que png ou gif est à la fin ça passera !

                                  échapper le . fait que ça sera un . et imposera l'extention.

                                  ( :D je commence à douter de ton avatar :d)
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    26 novembre 2005 à 16:47:37

                                    Citation : Gectou4

                                    alors tu n'as donc toujours pa remarquer que "n'importe quel caractère" teu ton extension ?

                                    et qu'on peu donc charger une image http://url.com/cekejeuveupng tant que png ou gif est à la fin ça passera !

                                    échapper le . fait que ça sera un . et imposera l'extention.

                                    ( :D je commence à douter de ton avatar :d)



                                    Bon, t'as raison, j'y connais que dalle en regex, t'es beaucoup trop fort pour moi. :-°
                                    Vais te laisser là, j'ai la soupe sur le feu !
                                    • Partager sur Facebook
                                    • Partager sur Twitter

                                    Une regex !!!

                                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                    • Editeur
                                    • Markdown