String cutten?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Wenns danach geht, dann würd ich gleich preg_match() verwenden und den Benutzernamen von eben dieser Funktion zurückgeben lassen.

    Kommentar


    • #17
      Hm, jetzt steh ich aufm Schlauch. Wie meinst du das?

      Gruss Micha ;-)

      Kommentar


      • #18
        erstmal ereg() durch preg_match ersetzen. Und dann besonders den 3. Parameter ansehen.

        Kommentar


        • #19
          Hmm... hatte ich schon befürchtet. Was machste wenn sich PeterMeier@gmx.de und PeterMeier@Web.de anmelden?
          Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.

          Kommentar


          • #20
            @TobiaZ, da komme ich immer noch nicht weiter, 3. Parameter? was stimmt damit nicht?

            @ArSeN, es wird beim einloggen folgendermaßen geprüft:

            Benutzer würd aus E-Mail angelegt, ein generiertes Passwort aus time() und mit md5() abgespeichert, IP Wird angelegt, um später beim einloggen alles auf Richtigkeit zu checken.

            Gruss Micha ;-)

            Kommentar


            • #21
              @TobiaZ, da komme ich immer noch nicht weiter, 3. Parameter? was stimmt damit nicht?
              Code:
              int preg_match( string $Suchmuster, string $Zeichenkette [, [color=red]array &$Treffer[/color][,...]] )
              Diesen 3. Parameter meint Tobi!

              Kommentar


              • #22
                So?

                PHP-Code:
                    if(trim($_POST['from_mail']) == '') {
                        
                $err_text.='E-Mail-Adresse! ';
                    }
                    elseif(!
                preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$/i",
                    
                substr($_POST['from_mail'] , 0strpos($_POST['from_mail'], '@')))) {
                        
                $err_text.='Ungültige E-Mail-Adresse! ';
                    } 
                Funktioniert leider nicht, sicherlich hab ich da nen Fehler drin.

                Gruss Micha ;-)

                Kommentar


                • #23
                  So gehts wieder, ist das so ok?

                  PHP-Code:
                  if(trim($_POST['from_mail']) == '') {
                          
                  $err_text.='E-Mail-Adresse! ';
                      }
                      elseif(!
                  preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$/i",strtolower($_POST['from_mail']))) {
                          
                  $err_text.='Ungültige E-Mail-Adresse! ';
                      }
                      else {
                          
                  $user substr($_POST['from_mail'] , 0strpos($_POST['from_mail'], '@'));

                  Gruss Micha ;-)

                  Kommentar


                  • #24
                    Du hast mich anscheinend nicht richtig verstanden.

                    Lies doch mal nach, wozu der dritte Parameter gut ist. Er gibt dir "gefundene Werte" (also werte auf die dein Muster passt) aus dem originalstring zurück.

                    Du kannst also einfach den gewünschten Teil (vor dem @) im Pattern definieren und dann über den dritten Parameter ($trefffer/$ma) zurückgeben lassen.

                    Somit sparst du dir das gedöns mit substr und so...

                    Kommentar


                    • #25
                      Hi Tobi,

                      Kannst du mir bitte mal ein Beispiel posten? Oder ne gut verständliche Doku zeigen, denn ich will das auch verstehen.

                      Gruss Micha ;-)

                      Kommentar


                      • #26
                        Oder ne gut verständliche Doku zeigen, denn ich will das auch verstehen.
                        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                        Kommentar


                        • #27
                          Original geschrieben von 23isall
                          Oder ne gut verständliche Doku zeigen, denn ich will das auch verstehen.
                          Gruss
                          H2O

                          Kommentar


                          • #28
                            also, vorausgesetzt, dass folgende Zeile gemäß deinen Wünschen prüft
                            PHP-Code:
                            elseif(!preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$/i",strtolower($_POST['from_mail']))) { 
                            brauchst du nur eine klammer um den ersten Teil setzen und dir dann mal $ma/$treffer (also die Variable, die du als 3. angegeben hast) mittels print_r() ausgeben lassen.

                            PHP-Code:
                            elseif(!preg_match("/^([0-9a-z]([-_.]?[0-9a-z])*)@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$/",strtolower($_POST['from_mail']),$ma)) {
                            print_r($ma); 
                            Müsste dir auf die Sprünge helfen.

                            Kommentar


                            • #29
                              Code umbrechen!

                              *schnell weg renn*

                              Kommentar


                              • #30
                                Nicht seit es das hier gibt...

                                Kommentar

                                Lädt...
                                X