Ankündigung

Einklappen
Keine Ankündigung bisher.

String nach einem Zeichen absuchen...

Einklappen

Neue Werbung 2019

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

  • String nach einem Zeichen absuchen...

    Tagchen...

    So, jetzt bin ich seit über einer Stunde auf der Suche nach einer Lösung für mein Problem. Ich hab das Forum hier durchwühlt, Google genervt
    und meine Bücher durchgeforstet. Aber nichts was ich irgendwie gebrauchen könnte.

    Ok, folgendes Problem:

    Ich habe ein Eingabeformular welches später in einer email verschickt werden soll. Das ganze funzt wunderbar. Einziges Problem: Der User
    kann wählen ob an die Email-Adresse die er vorher eingegeben hat eine Kopie dieser Email gesendet werden soll. Das funzt auch, nur wenn er
    keine emailadresse eingibt (oder falsch) bekomme ich einen INTERNAL SERVER ERROR - was ja auch logisch ist...wohon soll die email geschickt
    werden wenn keine adresse einegegeben wurde.

    Jetzt habe ich mich auf die Suche nach einer Lösung für das PRoblem gemacht. Zuerst dachte ich das ich den String einfach darauf prüfe ob
    etwas drinn ist oder nicht. Aber das schützt ja nicht vor Fehleingaben.

    Dann habe ich mir Gedanken darüber gemacht was so eine Adresse aussmacht und bin dabei auf das "@" gestoßen. Also müsste ich einfach
    schauen ob in der Eingabe ein "@" vorkommt (und zwar nur 1(!) ). Da dachte ich dann an die Funktion

    PHP-Code:
    substr_count 
    Wenn diese als Wert 1 zurück gibt könnte die Adresse stimmen oder zumindest wurde eine Adresse eingegeben. Genauso könnte ich noch
    nach einem "." nach dem "@" suchen da dieses Zeichen auch in jeder email-Adresse vorkommt (wohl auch mehrmals).

    Mancher mag jetzt vielleicht die Hände über den Kopf zusammenschlagen und denken dass das viel einfacher geht, aber mir qualmt langsam der
    Kopf und ich kann mir gut vorstellen das ich das Eine oder das Andere übersehen habe. Falls jemand einen besseren Vorschlag hat wäre ich sehr

    dankbar. Im Grunde würde mir der Name der Funktion reichen, dann könnte ich selber nachschauen...

    besten dank

    Lapje

  • #2
    Wie wäre es mit

    PHP-Code:
    <?php
    if (strpos($email'@') !== false) { // beachte != und noch ein =
      // $email enthält das @
    }
    ?>
    Ich würde die E-Mail-Prüfung nicht ins extreme weiterforcieren, denn wer
    falsche Eingaben machen will, schafft das auch. Und letztlich ist es ja seine Kopie, die er haben will.

    Wenn du die E-Mail-Prüfung doch extremer machen willst, such mal bei
    Google nach "email regexp". Ich empfehle es allerdings nicht.

    PS: Beim Posten am besten manuell Zeilenumbrüche einfügen, wenn es das
    Layout zerreißt, macht sonst keinen Spass das Posting zu lesen.

    Kommentar


    • #3
      Besten Dank...

      Werds gleich mal ausprobieren.

      Klar werd ich das nicht extrem forcieren denn ich denke dass man vom User schon verlangen kann das er seine Email-Adresse schreiben kann.
      Aber ich denke mal die Suche nach einem "@" ist sicherer als nur die Frage ob etwas eingetragen wurde...

      Was ich damit noch weiterführen wollte war auch dass an den User automatisch keine erst gar keine Kopie gesendet wird wenn die email-adresse nicht stimmt oder nichts eingetragen wurde...

      besten dank

      Kommentar

      Lädt...
      X