Brauch hier bei mal hilfe!

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

  • Brauch hier bei mal hilfe!

    Code:
    <?php
    $text = "<a href=\"http://www.test.com\" target=\"_blank\">Test-Seite</a> hier innerhalb von a href<br>
    [ url]http://www.test.com[/ url] hier innerhalb von URL<br>
    [ url=http://www.test.com]Test-Seite[/ url] hier innerhalb von URL=<br>
    http://www.test.com hier ganz Solo und hier soll es ausgetauscht werden.<br>";
    
    function ubb($msg)
    	{
    	global $link;
    	
                    // Muss natürlich ungekehrt sein. Ich will ja nur die http: Ohne eines der folgenden Zeichen darvor " ]
    	$msg = str_replace("([\"\]=]http://(.*))","ERSETZT\\1",$msg);
    	
    	return $msg;
    	}
    
    echo ubb($text);
    ?>
    Ich glaube es ist selbsterklärend wenn man die Var $text sich durchliest.
    Zuletzt geändert von Wotan; 10.10.2002, 14:43.
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    also mit str_replace kommte da auf jeden fall nicht weit
    meine Projekte bestaunen: http://www.kleiza.de

    Kommentar


    • #3
      Wie müsste es dann aus sehen um damit ich das erreiche was ich machen will?
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        ob das mit <a href=\"http://www.test.com\"... zurechtkommt
        habe ich jetzt nicht getestet...
        wenn (;-)) ich $text richtig verstanden habe ich dein Problem
        das www.test.de mehrfach ersetzt wird ?! Richtig ?
        Der Trick hier ist das Leerzeichen vor bzw. nach den Link.
        Das Teil kann eigentlich alles außer 'List'

        PHP-Code:
        // add_vbb_code
        // wandelte einen String mit ubb-code in HTML um.
        function add_vbb_code($string){

        $string str_replace("=www.","=http://www.",$string);
        $string str_replace("]www.","]http://www.",$string);

        // native Zeilenumbrüche
        //$string = str_replace("\r","",$string);
        //$string = str_replace("\n"," <br> ",$string);

        // Zeilenumbruch
        $string str_replace("[br]"," <br> ",$string);

        // Horizontale Linie
        $string str_replace("[hr]","<hr>",$string);

        // Text Fett schreiben
        $string str_replace("[b]","<b>",$string);
        $string str_replace("[/b]","</b>",$string);

        // Text Krusiv schreiben
        $string str_replace("[i]","<i>",$string);
        $string str_replace("[/i]","</i>",$string);

        // Text Unterstreichen
        $string str_replace("[u]","<u>",$string);
        $string str_replace("[/u]","</u>",$string);

        // Textfarbe ROT
        $string str_replace("[color=red]","<font color='red'>",$string);

        // Textfarbe BLAU
        $string str_replace("[color=blue]","<font color='blue'>",$string);

        // Textfarbe GRÜN
        $string str_replace("[color=green]","<font color='green'>",$string);
        $string str_replace("[/color]","</font>",$string);

        // Textgröße 2
        $string str_replace("[size=2]","<font size='2'>",$string);

        // Textgröße 3
        $string str_replace("[size=3]","<font size='3'>",$string);

        // Textgröße 4
        $string str_replace("[size=4]","<font size='4'>",$string);
        $string str_replace("[/size]","</font>",$string);

        // Deutlich schreiben
        $string str_replace("[show]","<b>",$string);
        $string str_replace("[/show]","</b>",$string);

        // [quote]
        $string eregi_replace("\[quote\]([^\[]*)\[/quote\]","<BLOCKQUOTE><font size=\"1\" face=\"Verdana, Arial\">[Zitat:]</font><hr><i>\\1</i><hr></BLOCKQUOTE>",$string);

        // [code]
        $string eregi_replace("\[code\]([^\[]*)\[/code\]","<font size=\"1\" face=\"Verdana, Arial\">[Code:]</font><hr><pre>\\1</pre><hr>",$string);


        // erzwungene Email
        $hack "|(\[email\])(.*?)(\[/email\])|s";
        $code "<a href=\"mailto:\\2\">\\2</a>";
        $string preg_replace($hack,$code,$string);

        // erzwungene Email + beschreibung
        $hack "|(\[email=)(.*?)(\])(.*?)(\[/email\])|s";
        $code "<a href=\"mailto:\\2\">\\4</a>";
        $string preg_replace($hack,$code,$string);

        // Auto url, Auto eMail, Auto image
        $string " ".$string." ";
        $string str_replace("<br>"," <br> ",$string);
        $string eregi_replace(" www."," http://www.",$string);

        $hack '§(?<!(\]|=|"|>))(http://)([;_=\-\#\?\/\&a-zA-Z0-9\.]*)(\.gif|\.jpg|\.png|\.jpeg|\.jpe)§';
        $code "<img src=\"\\0\">";
        $string preg_replace($hack,$code,$string);

        $hack '§(?<!(\]|=|"|>))(http://)([;_=\-\#\?\/\&a-zA-Z0-9\.]*)§';
        $code "<a target=\"_blank\" href=\"http://\\3\">\\3</a>";
        $string preg_replace($hack,$code,$string);

        $string preg_replace("/( [A-Za-z0-9\.\-\_]{2,})(\@)([A-Za-z0-9\.\-\_]{3,})(\.)([A-Za-z]{2,3})\b/","<a href=\"mailto:\\0\">\\0</a>",$string);
        $string str_replace(" <BR> ","<BR>",$string);
        trim($string);

        // erzwungene url
        $hack "|(\[url\])(.*?)(\[/url\])|s";
        $code "<a target=\"_blank\" href=\"\\2\">\\2</a>";
        $string preg_replace($hack,$code,$string);

        // erzwungene url + beschreibung
        $hack "|(\[url=)(.*?)(\])(.*?)(\[/url\])|s";
        $code "<a target=\"_blank\" href=\"\\2\">\\4</a>";
        $string preg_replace($hack,$code,$string);

        // erzwungenes bild
        $hack "|(\[img\])(.*?)(\[/img\])|s";
        $code "<img border=\"0\" src=\"\\2\">";
        $string preg_replace($hack,$code,$string);

        // erzwungene bild + beschreibung
        $hack "|(\[img=)(.*?)(\])(.*?)(\[/img\])|s";
        $code "<img border=\"0\" src=\"\\2\" alt=\"\\4\">";
        $string preg_replace($hack,$code,$string);

        return 
        $string;
        // add_vbb_code() ------------------------------------------------------------------------------- 
        Gruß
        Thomas

        Kommentar


        • #5
          @thomas
          Postet das mal bitte statt in PHP lieber in code
          oder häng es mal als Datei an.
          Das Forum zerhackt gerne den VBB-Code
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            hmm,

            dachte ohne 'URLs automatisch umwandeln' gehts...
            -> jetzt als Anhang.

            [edit]
            jetzt als ZIP
            wenn jetzt nicht klappt ... schick ichs per Post!
            Und ich meine die echte, mit gelb und so
            Angehängte Dateien
            Zuletzt geändert von Thomas; 10.10.2002, 16:30.
            Gruß
            Thomas

            Kommentar


            • #7
              Mach mal daraus eine Zip, Bitte.
              Die Text-Datei sieht nicht viel anders aus.
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8
                Jetzt hat es geklappt.

                Nur bekomme ich in diesen Abschnitt eine Fehlermeldung:
                Code:
                $hack = '§(?<!(\]|=|"|>))([url]http://[/url])([;_=\-\#\?\/\&a-zA-Z0-9\.]*)(\.gif|\.jpg|\.png|\.jpeg|\.jpe)§';
                $code = "<img src=\"\\0\">";
                $msg = preg_replace($hack,$code,$msg);// Zeile 79
                
                $hack = '§(?<!(\]|=|"|>))([url]http://[/url])([;_=\-\#\?\/\&a-zA-Z0-9\.]*)§';
                $code = "<a target=\"_blank\" href=\"http://\\3\">\\3</a>";
                $msg = preg_replace($hack,$code,$msg);// Zeile 83
                Warning: Delimiter must not be alphanumeric or backslash in C:\wampp2036\htdocs\marco\ubb.php on line 79

                Warning: Delimiter must not be alphanumeric or backslash in C:\wampp2036\htdocs\marco\ubb.php on line 83
                *winks*
                Gilbert
                ------------------------------------------------
                Hilfe für eine Vielzahl von Problemen!!!
                http://www.1st-rootserver.de/

                Kommentar


                • #9
                  hmm,
                  php 4.1.1 macht es ohne Probleme,
                  gerade eben noch auf localhost getestet...
                  selbst mit deinem String - dein Problem ist bei mir schon mal gelöst

                  vielleicht als direkter download?
                  Gruß
                  Thomas

                  Kommentar


                  • #10
                    Hab das jetzt einfach mal in deine Datei kopiert und es kommt zum selben Fehler. Siehe Anhang

                    PHP-Version 4.2.1
                    Angehängte Dateien
                    Zuletzt geändert von Wotan; 10.10.2002, 17:08.
                    *winks*
                    Gilbert
                    ------------------------------------------------
                    Hilfe für eine Vielzahl von Problemen!!!
                    http://www.1st-rootserver.de/

                    Kommentar


                    • #11
                      ...scheint also an der php-Version zu liegen.

                      Ich tipp ja mal auf die § Zeichen ... aber wie gesagt,
                      bei mir geht's noch...
                      Gruß
                      Thomas

                      Kommentar


                      • #12
                        Online geht es aber offline nicht. sch...

                        Das einizge was jetzt nicht geht ist wenn am Zeilenanfang www.test.de steht. Wird diese nicht umgewandelt.
                        *winks*
                        Gilbert
                        ------------------------------------------------
                        Hilfe für eine Vielzahl von Problemen!!!
                        http://www.1st-rootserver.de/

                        Kommentar

                        Lädt...
                        X