http:// und www.

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

  • http:// und www.

    Wie muss ich folgenden Script-Code umschreiben damit er mir auch www.meine.de ersetz und als link ausgibt, ändern.

    $msg = ereg_replace("(http://[^[:space:]$]+)","<A HREF=\"\\1\" target=\"_blank\"><u><b>\\1</b></u></A>",$msg);
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    Re: http:// und www.

    zweites ereg dahinter ist die einfachste Lösung:
    $msg = ereg_replace("(www\.[^[:space:]$]+)","<A HREF=\"http://\\1\" target=\"_blank\"><u><b>\\1</b></u></A>",$msg);
    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


    • #3
      Hab ich gemacht. Jetzt zerkackt er mir aber die HTTP.

      Das ist jetzt die Ausgabe
      Code:
      www.meine.de" target="_blank">
      http://www.meine.de 
      info@meine.de www.deine.de" target="_blank"> 
      http://www.deine.de info@deine.de www.seine.de
      
      und die Var sieht so aus:
      
      $text = "http://www.meine.de 
      info@meine.de 
      http://www.deine.de 
      info@deine.de 
      www.seine.de";
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        ahups ...
        dann mit preg_replace, da kann man mehrere Ersetzungen parallel machen (hoffe ich):
        $msg = preg_replace(array(
        "&(www\.[^[:space:]$]+)&i",
        "&(http://[^[:space:]$]+)&i"
        ), array(
        '<A HREF="http://\1" target="_blank"><u><b>\1</b></u></A>',
        '<A HREF="\1" target="_blank"><u><b>\1</b></u></A>'
        ), $msg);
        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


        • #5
          Und das kommt dann im Quelltext dabei raus:
          Code:
          <A HREF="http://<A" target="_blank">http://<A</A>
           HREF="<A HREF="http://www.meine.de""
           target="_blank">http://www.meine.de"</A>
           target="_blank">www.meine.de</A> <br>
           <A HREF="<A HREF="http://www.seine.de""
           target="_blank">http://www.seine.de"</A>
           target="_blank">www.seine.de</A>
          Und hier die Funktion:
          Code:
          $msg = preg_replace(array(
          "&(www\.[^[:space:]$]+)&i",
          "&(http://[^[:space:]$]+)&i"),array(
          '<A HREF="http://\\1" target="_blank">\\1</A>',
          '<A HREF="\\1" target="_blank">\\1</A>'), $msg);
          Meine Var:
          Code:
          $text = "http://www.meine.de <br> www.seine.de";
          Habe jetzt folgendes Probiert:
          die ' gegen " ausgetauscht
          vor die " ein \ gesetzt
          Aber er bringt mir immer noch das querbeet.
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            ok, nochmal anders

            $msg = ereg_replace('(www\.[^[:space:]$]+)','http://\1', $msg);
            vor deine ursprüngliche ereg setzen
            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


            • #7
              Das ist jetzt die Funktion:
              Code:
              $msg = ereg_replace("(www\.[^[:space:]$]+)",
              "http://\\1",$msg);
              $msg = ereg_replace("([url]http://[/url][^[:space:]$]+)",
              "<A HREF=\"\\1\" target=\"_blank\">\\1</A>",
              $msg);
              $msg = ereg_replace("(www\.[^[:space:]$]+)",
              "<A HREF=\"http://\\1\" target=\"_blank\">\\1</A>",
              $msg);
              Kommt aber immer noch Chaos raus ob woll schmalle in Buxtehude ist.

              Kannst du nicht mal schauen wie es hier im Forum gemacht wird?
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                sorry ich vergaß: lass die letzte ereg weg
                nur die neue und deine alte
                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


                • #9
                  jetzt macht er http://http://www.meine.de
                  und http://www.meine.de

                  ("(www\.[^[:space:]$]+)","http://\\1", $msg);
                  ("(http://[^[:space:]$]+)","<A HREF=\"\\1\" target=\"_blank\">\\1</A>",$msg);
                  *winks*
                  Gilbert
                  ------------------------------------------------
                  Hilfe für eine Vielzahl von Problemen!!!
                  http://www.1st-rootserver.de/

                  Kommentar


                  • #10
                    okay, ersetz die erste durch
                    $msg = ereg_replace('(http://)?(www\.[^[:space:]$]+)','http://\2', $msg);
                    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


                    • #11
                      KNUTSCH suppiiiiiiii es klappt.
                      Danke Titus.

                      Das mit den http: und www. Ersetzungen werde ich mir nie merken.
                      *winks*
                      Gilbert
                      ------------------------------------------------
                      Hilfe für eine Vielzahl von Problemen!!!
                      http://www.1st-rootserver.de/

                      Kommentar


                      • #12
                        Zu früh gefreud!!!

                        Wenn ich das jetzt in Kombination mit [ URL= und [ URL machen kommt wieder nur Müll raus.

                        [code]
                        // [URL]
                        $msg = preg_replace("/\[url](.*)\[\/url\]/siU","<a href=\"\\1\" target='_blank'>\\1</a>",$msg);

                        // [URL=
                        $msg = preg_replace("/\[url=(.*)](.*)\[\/url\]/siU","<a href=\"\\1\" target='_blank'>\\2</a>",$msg);

                        // URL
                        $msg = ereg_replace('(http://)?(www\.[^[:space:]$]+)','http://\\2',$msg);
                        $msg = ereg_replace("(http://[^[:space:]$]+)","<A HREF=\"\\1\" target=\"_blank\">\\1</A>",$msg);
                        [Code]
                        *winks*
                        Gilbert
                        ------------------------------------------------
                        Hilfe für eine Vielzahl von Problemen!!!
                        http://www.1st-rootserver.de/

                        Kommentar


                        • #13
                          loggisch ... pack die [url]-Teile nach hinten oder lass den href= in der Ersetzung weg ... sonst wird
                          aus [ url="http://www.url.de/" ]blah[ /url ]
                          im ersten Schritt <a href="http://www.url.de/">blah</a>
                          und im zweiten <a href="http://<a href="www.url.de/">www.url.de</a>">blah</a>
                          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


                          • #14
                            @wotan
                            Sorry aber mit den reg.Expressions bin ich auf Kriegsfuß

                            PHP-Code:
                            /**
                            * replace URIs with appropriate HTML code to be clickable.
                            * Quelle: http://www.dclp-faq.de/q-regexp-uri-klickbar.html
                            */
                            function replace_uri($str) {
                              
                            $pattern '#(^|[^\"=]{1})(http://|ftp://|mailto:|news:)([^\s<>]+)([\s\n<>]|$)#sm';
                              return 
                            preg_replace($pattern,"\\1<a href=\"\\2\\3\"><u>\\2\\3</u></a>\\4",$str);

                            Hab gerade mit dem da gekämpft, aber die www. bekomme ich leider nicht hinein, dabei wär es so schön, http://|ftp://|mailto:|news: wären schon da
                            Wenn Du aber auf die blöden www. verzichten könntest, dann ....
                            Zuletzt geändert von hand; 25.07.2002, 17:42.

                            Kommentar


                            • #15
                              Original geschrieben von Titus
                              loggisch ... pack die [url]-Teile nach hinten oder lass den href= in der Ersetzung weg ... sonst wird
                              aus [ url="http://www.url.de/" ]blah[ /url ]
                              im ersten Schritt <a href="http://www.url.de/">blah</a>
                              und im zweiten <a href="http://<a href="www.url.de/">www.url.de</a>">blah</a>
                              Klappt leider nicht. Ich kann entweder oder benutzen, aber nicht beide zusammen.
                              *winks*
                              Gilbert
                              ------------------------------------------------
                              Hilfe für eine Vielzahl von Problemen!!!
                              http://www.1st-rootserver.de/

                              Kommentar

                              Lädt...
                              X