eMail-Adressen automatisch erkennen

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

  • eMail-Adressen automatisch erkennen

    Hallo Freunde der leichten Unterhaltung...

    ich stehe da mal wieder vor einem Problem.

    Ich bastele gerade für einen Bekannten ein kleines CMS und stehe nun vor folgender Aufgabe:

    Über das Admin-Tool können Texte eingebenen werden. Einige von denen enthalten pro Seite mehrer eMail-Adressen. Diese sollen dann aber bei der Ausgabe auf ein Mailformular verlinkt werden.
    In der Texteingabe soll aber kein HTML-Code eingegeben werden müssen.

    Also muss vor der Ausgabe ein Script überprüfen ob im Text eMail-Adressen vorhanden sind und diese dann per ereg_replace() mit den nötigen HTML-Tags ersetzen.

    Dass das Mailformular denn auch weis, wer den Empfänger ist, soll dann aus
    name@domain.de
    in der Ausgabe
    <a href="mailform.php4?mail=name@domain.de">name@domain.de </a>
    werden.

    Hat da jemand eine Idee, wie so was zu realisieren ist. Vor allem, dass schon mal die eMail-Adressen automatisch erkannt werden.

    Danke,
    Andi

  • #2
    Such mal nach VBB/UBB hier im Code-Schnipsel-Forum.
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

    Kommentar


    • #3
      Und weiter gekommen?
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        Ok, wenn ich nun folgendes einbaue:
        $content = eregi_replace("\\[email=([^\\[]*)\\]([^\\[]*)\\[/email\\]","<a href=\"mailto:\\1\">\\2</a>",$content);

        setzt das ja vorraus, dass im Text die email mit
        eMail an mich
        gekennzeichnet ist.

        Wie erkennt das Script das aber automatisch, dass quasi ein @ gefolgt von . und einer gültigen TLD gleich eine eMai-Adresse ist ohne dass im Text [email] steht?

        Gruß & Dank, Andi

        Kommentar


        • #5
          http://www.dclp-faq.de/q/q-mail-adresse-gueltig.html

          Kommentar


          • #6
            Schau dir mal das Posting an:
            http://www.php-resource.de/forum/sho...&threadid=9512

            Dort solltest du was finden.
            PHP-Code:
            <?php
            function ubb($msg)
            {
            // URL
            $msg ereg_replace("(http://[^[:space:]$]+)","<A HREF=\"\\1\" target=\"_blank\"><u><b>\\1</b></u></A>",$msg);
            // e-Mail
            $msg ereg_replace ("[_a-zA-z0-9\-]+(\.[_a-zA-z0-9\-]+)*\@"."[_a-zA-z0-9\-]+(\.[a-zA-z]{1,3})+","<a href=\"mailto:\\0\"><u><b>\\0</b></u></a>",$msg);
            return 
            $msg;
            }
            ?>

            aufruf.php
            <?php
            include("funk.php");
            $text "http://www.meine.de info@meine.de http://www.deine.de info@deine.de";
            $text ubb($text);
            echo 
            nl2br($text);
            ?>
            Zuletzt geändert von Wotan; 09.10.2002, 12:54.
            *winks*
            Gilbert
            ------------------------------------------------
            Hilfe für eine Vielzahl von Problemen!!!
            http://www.1st-rootserver.de/

            Kommentar


            • #7
              Und jetzt weiter gekommen?
              Zuletzt geändert von Wotan; 17.08.2004, 13:41.
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                Bin noch am experimentieren.

                Momentan nimmts noch den ganzen Text der Seite als Link ?!?

                Melde mich gleich noch mal, muss erst noch mal ein bisschen basteln.

                Thanx, Andi

                Kommentar


                • #9
                  Ja das sieht jetzt wunderbar aus!

                  Doch ein Problemchen hätte ich da noch:

                  Bei der Domain erlaubt er keine Subdomains.

                  Wenn ich jetzt eine Adresse max.muster@physik.uni-ffm.de habe, schneidet er nach .uni ab.

                  Ich bin in regulären Ausdrücken leider nicht so fitt (eigentlich überhaupt nicht ), wie kann ich das denn ändern? Vor dem @ ist's ihm egal wie viele Punkte ich da hin setze, di nimmt er alle mit.

                  Dank & Gruß, Andi

                  Kommentar


                  • #10
                    ich habe da eine abfrage nach korrekter mail-syntax vielleicht hilft die weiter:
                    iif (!ereg ("^[_a-zA-Z0-9-]+(\.[_a-zA-z0-9-]+)*@([.a-zA-Z0-9-])+\.([a-zA-Z]{2,3})$",$_POST['mail], $reg))
                    gruss
                    peter
                    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                    Meine Seite

                    Kommentar


                    • #11
                      Da hats jetzt mit mehreren subdomains funktioniert, aber unterstriche wollte er keine.
                      Habs jetzt aber hinbekommen!

                      Für alle dies vielleicht gebrauchen können hier nun die finale Version.
                      Diese erlaubt sogar TLD mit vier stellen (für .info z.B.)

                      $content=ereg_replace('[_a-zA-z0-9\-]+(\.[_a-zA-z0-9\-]+)*\@([._a-zA-Z0-9-])+\.([a-zA-Z]{2,4})+','<a href="mailform.php4?email=\\0">\\0</a>',$content);

                      An Stelle von mailform.php4?email= kann man auch ein normales mailto: verwenden.

                      Danke an alle für die Mithilfe!

                      Gruß, Andi

                      Kommentar


                      • #12
                        hier gibts ne bbcode klasse, parst so ziemlich alles, was an Forum-Code vorkommen kann:

                        http://www.it-checkpoint.net/

                        schimpft sich sbbcode

                        gruss

                        Kommentar


                        • #13
                          Hippi genau das habe ich auch gesucht .
                          [SIZE=1]Projekte:
                          wartower.de | planetd2.de

                          Kommentar


                          • #14
                            http://www.regexlib.com/DisplayPatte...0&categoryId=1
                            Sunshine CMS
                            BannerAdManagement
                            Borlabs - because we make IT easier
                            Formulargenerator [color=red]Neu![/color]
                            Herkunftsstatistik [color=red]Neu![/color]

                            Kommentar

                            Lädt...
                            X