Zeichenkette überprüfen..

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

  • Zeichenkette überprüfen..

    Hallöchen

    Ich will eine Zeichenkette überprüfen ob es zB. einen "."(Punkt) enthält. Das kann ich ja mit strstr(); machen. Also:
    --
    if(strstr($string, ".")){
    echo "der Punkt ist enthalten";
    exit;
    }

    War ja ganz einfach. Nun will ich aber auch wissen ob ein Komma, Strich ect enthalten ist. Bin aber auch zu Faul für jedes eine if Anweisung zu schreiben. Gibt es da noch eine andere Lösung ??

    Mfg Frosty
    My New Projekt: P²Board
    Designer im Team gesucht !

  • #2
    hm keiner eine Idea ???

    Mal noch eine 2te Frage. Stelle mich wieder zu blöd an. Habe eine Datei in der Mail Adressen unter einander stehen. An die will ich alle gleichzeitig eine Nachricht verschicken. Wie ein Newsletter halt. Bringe das aber mal wieder nicht. Hatte es schon versucht die Mail-Addy´s in ein Array einzulesen und dann zu verschicken.

    $fp = fopen ("mail.dat", "r");
    flock($fp,1);
    $mail = file("mail.dat");
    flock($fp,3);
    fclose($fp);

    Funzt aber nicht. Hätte da jemand zu fällig noch eine andere Lösung für mich parat ??

    Mfg Frosty
    My New Projekt: P²Board
    Designer im Team gesucht !

    Kommentar


    • #3
      $fp = fopen ("mail.dat", "r");
      flock($fp,1);
      $mail = file("mail.dat");
      flock($fp,3);
      fclose($fp);
      $mail = $mail[0];

      So in der Datei die Adressen trennen:
      email1@host.de; email2@host.de;
      Kaffi
      Errare humanum est

      W32.Schmalle.H@mm

      Kommentar


      • #4
        Ahh Danke so funzt es schon mal halbwegs. Naja außer man darf die E-Mail´s nicht mit Semikolon trennen sondern nur mit Komma.
        Eigenartig ist jetzt das mein header nicht mehr ordentlich interprtiert wird sonder in der Mail ausgedruckt wird und nicht verarbeitet. Es sollten eigentlich HTML-Mails werden.

        Ankommen tut jetzt das hier, warum weiß ich auch noch nicht:
        -------
        Subject: Test Mail
        From: test@cash-geier.de
        Content-Type: text/html
        Content-Transfer-Encoding: 8bit
        X-Mailer: PHP 4.0.4pl1

        Bla test bla
        ----
        und der Absender ist: wwwrun@server73.plusserver.de anstatt meine vorgegebene E-Mail Adresse.

        Diese verfahrensweise hatte ich die Ganze Zeit benutzt um HTML-Mails zu versenden. Aber da war es immer nur ein Empfänger...... *grübel*

        Trotzdem Dank

        Mfg
        My New Projekt: P²Board
        Designer im Team gesucht !

        Kommentar


        • #5
          Habs rausgefunden. Man sollte vorher alle Leerzeichen mal entfernen ( chop() ). Dann klapts auch mit dem Nachbarn

          Mfg Frosty
          My New Projekt: P²Board
          Designer im Team gesucht !

          Kommentar


          • #6
            Na dann viel Spaß mit deinem Nachbarn
            Kaffi
            Errare humanum est

            W32.Schmalle.H@mm

            Kommentar


            • #7
              Naja is eine Nachbar-in
              My New Projekt: P²Board
              Designer im Team gesucht !

              Kommentar


              • #8
                Naja eine Lösung für mein erstes Problem hat nicht vieleicht jemand ???

                Mfg Frosty

                [Editiert von Frosty am 07-10-2001 um 21:05]
                My New Projekt: P²Board
                Designer im Team gesucht !

                Kommentar


                • #9
                  Das erste Problem? Was war das nochmal? *amkopfkratz*

                  Vieleicht geht es mit regulären Ausdrücken.
                  Damit habe ich aber noch nichts gemacht. Frag am
                  besten mal bei Titus an.
                  Kaffi
                  Errare humanum est

                  W32.Schmalle.H@mm

                  Kommentar


                  • #10
                    Ähm Hallo Titus... Hättest du da eine Idee??
                    My New Projekt: P²Board
                    Designer im Team gesucht !

                    Kommentar


                    • #11
                      Ich bin zwar nicht Titus, aber eine Idee hätte ich schon (und zwar aufgrund meines eigenem):

                      $reg = "/[\.\,\-\_]/i";

                      if(!preg_replace($reg, $string)){
                      echo "der Punkt ist enthalten";
                      exit;
                      }

                      Ich hab jetzt mal die Zeichen in der Zeichenklasse alle mit dem Backslash escaped, so wie's eigentlich auch in der FAQ von dclp steht. Allerdings, bei $ geht's nicht...



                      Kommentar


                      • #12
                        Hallöchen, erstmal Danke,

                        leider wirft er mir da eine Fehlermeldung aus
                        ---
                        Warning: Wrong parameter count for preg_replace() in /home/cash-geierde/public_html/test/test.php4 on line 53
                        der Punkt ist enthalten
                        ---
                        Er findet zwar den Punkt und gibt true aus, aber...

                        Ich denke mal es wird noch eine weitere zeichenkette erwarten mit dem der Punkt ersetzt werden soll. Hm solls ja auch nicht....
                        My New Projekt: P²Board
                        Designer im Team gesucht !

                        Kommentar


                        • #13
                          Oh man, ich bin ja auch ein hohler Bembel.

                          Muss natürlich so sein

                          if(preg_match($reg, $string)){
                          echo "der Punkt ist enthalten";
                          exit;
                          }

                          also kein _replace, sondern preg_match(). Natürlich nicht auf false, sondern auf true als Rückgabe prüfen. Sorry - bin wohl mit meinen diversen Test-Dateien etwas durcheinander gekommen.

                          Kommentar


                          • #14
                            Blätter, Blätter... preg_match() gibts auch ?? man ich glaub ich komme jetzt garnicht mehr klar.

                            Reguläre Ausdrücke - Perl-Kompatible reguläre Ausdrücke tztztz Man ich glaub ich verliere den Überblick

                            Danke ich werds mal damit überprüfen

                            Mfg
                            My New Projekt: P²Board
                            Designer im Team gesucht !

                            Kommentar


                            • #15
                              Original geschrieben von Frosty
                              Hallöchen

                              Ich will eine Zeichenkette überprüfen ob es zB. einen "."(Punkt) enthält. Das kann ich ja mit strstr(); machen. Also:
                              --
                              if(strstr($string, ".")){
                              echo "der Punkt ist enthalten";
                              exit;
                              }

                              War ja ganz einfach. Nun will ich aber auch wissen ob ein Komma, Strich ect enthalten ist. Bin aber auch zu Faul für jedes eine if Anweisung zu schreiben. Gibt es da noch eine andere Lösung ??

                              Mfg Frosty
                              Dann benutz doch reguläre Ausdrücke:
                              if (ereg ('[\\.;\']', $string)) ...
                              Der doppelte Backslash vor dem Punkt ist zur einen Hälfte für PHP (da der Backslash selbst ein Sonderzeichen ist), zur anderen für ereg (da ist der Punkt ein Sonderzeichen).
                              Der Backshlash vor dem Hochkomma ist für PHP - sonst wär der String hier zuende und damit dahinter ein Parse Error.

                              Sonstige ereg-Sonderzeichen:
                              $ = Zeilenende
                              ^ = Zeilenanfang
                              außerhalb von Mengen:
                              +, * = Wiederholungszeichen (mind. 1x, mind. 0x)
                              (|) = Zeichenketten mit Alternativen

                              Wenn du E-Mail-Adressen auf Gültigkeit überprüfen willst, schau mal bei unseren Code-Schnipseln nach: http://www.php-resource.de/forum/sho...p?threadid=857
                              mein Sport: mein Frühstück: meine Arbeit:

                              Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                              Kommentar

                              Lädt...
                              X