Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: html durch bbcode ersetzten

  1. #1
    Gast

    Standard html durch bbcode ersetzten

    Hi, ich habe mir ein kleines Newsscript geschrieben, und wollte gerne, das wenn ich :irgendwas: eingebe, das dann ein Smiley kommt, so wie hier halt, oder auch wenn ich ";.)" (ohne ".") mache, das dann dieses Gesicht kommt, zudem soll wenn ich [ b ] schreib dann < b > gemeint ist.
    Also quasi bbcodes.
    Ich habe mir gedacht, das man das ja nur in der Ausgabedatei veraendern muss, weil den kraempel in die DB zu schicken ist ja schwachsinn, oder?
    Also schicke ich mal den code von der Datei wo ich die news auslese:
    Code:
     	$sql = "
    		SELECT
    			*
    		FROM
    			`news`
    	    ORDER BY
                    Datum DESC		
    	";
    	$ausgabe = mysql_query&#40;$sql&#41;;
    	
    
    
    	while&#40;$row = mysql_fetch_array&#40;$ausgabe&#41;&#41; &#123;
    	
    ?>
    
    
    
     <div class="newseintrag">
    <center><font size="4"><div class="Titel">
    <?=$row&#91;'titel'&#93;?></div></center></font>
    
    <div class="inhalt" >
    <?=nl2br&#40;$row&#91;'inhalt'&#93;&#41;?></div>
    <div class="Autor" >
    
    <div class="Link">By&#58;<?=$row&#91;'autor'&#93;?> <font color="#EEEEFF">---------------------------------</font>
    Link&#58;Quelle  Delete</div>
    </div></div>
    
    
    <? &#125; ?>
    Ich hoffe ihr koennt mir da weiterhelfen, das wuerde mir es um einiges Leichter machen!


    MFG
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    also in der db hältst du es dir als bbcode und im anzige datei wandelst du es um.

    und guck dir mal
    http://de.php.net/manual/de/function.str-replace.php

    an, das sollte alles sagen

  3. #3
    Gast

    Standard

    Also, ich schreibe es mit "bbcodes" in die DB rein, also

    Hallo, das ist ein Testnews ": laugh :" . Mal schaun ob das alles so klappt "; )"

    @Greenrover, danke fuer deine Seite, ich habe folgendes versucht, jedoch klappt das noch nciht so ganz, hier der Code
    Code:
    $inhalt = str_replace&#40;";&#41;", "<img src=\"/images/laugh.gif\" border=\"0\" alt=\"\">", $inhalt&#41;;
    
    str_replace&#40;"suchstring" "ersetzen_durch" $inhalt&#41;;
    
    $inhalt = str_replace&#40;"&#91;B&#93;" "" $inhalt&#41;;
    $inhalt = str_replace&#40;"&#91;/B&#93;" "" $inhalt&#41;;
    
    
       
    
    	# das auslesen der datenbank
    	$sql = "
    		SELECT
    			*
    		FROM
    			`news`
    	    ORDER BY
                    Datum DESC		
    	";
    	$ausgabe = mysql_query&#40;$sql&#41;;
    	
    
    
    	while&#40;$row = mysql_fetch_array&#40;$ausgabe&#41;&#41; &#123;
    	
    ?>
    
    
    
     <div class="newseintrag">
    <center><font size="4"><div class="Titel">
    <?=$row&#91;'titel'&#93;?></div></center></font>
    
    <div class="inhalt" >
    <?=nl2br&#40;$row&#91;'inhalt'&#93;&#41;?></div>
    <div class="Autor" >
    
    <div class="Link">By&#58;<?=$row&#91;'autor'&#93;?> <font color="#EEEEFF">---------------------------------</font>
    Link&#58;Quelle  Delete</div>
    </div></div>
    
    
    <? &#125; ?>
    Das ist wieder die Datei, mit der ich die Daten ausgebe.. Irgendwas stimmt da nicht! :P er gibt immernoch : laugh : als Wort aus, nicht als BBcode..

  4. #4
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    dann lies tda sganze nochmals durch....


    str_replace("[/B]" "[/b]" $inhalt)

    wurde nicht bis gestern noch die parameter einer funktion mit , getrennt ?!

    str_replace("[/B]", "[/b]", $inhalt)

  5. #5
    Gast

    Standard


    ja, wenn ich mich recht entsinne dann stimmt das wohl.. :P
    Code:
    <?
     
    if &#40;!empty&#40;$_REQUEST&#91;'newsid'&#93;&#41;&#41;
    &#123;
    $row=mysql_fetch_assoc&#40;mysql_query&#40;" SELECT * FROM `news` WHERE `id`='&#123;$_REQUEST&#91;'newsid'&#93;&#125;' LIMIT 1"&#41; &#41;; 
    $inhalt = str_replace&#40;";&#41;", "<img src=\"/images/laugh.gif\" border=\"0\" alt=\"\">", $inhalt&#41;;
    
    
    $inhalt = str_replace&#40;"&#91;B&#93;","", $inhalt&#41;;
    $inhalt = str_replace&#40;"&#91;/B&#93;", "", $inhalt&#41;;
    
    
    
    ?>
    
    <div class="newseintrag">
    <center><font size=\"4\"><div class=\"Titel\">
    <?=$row&#91;'titel'&#93;?></div></center></font>
    
    <div class="inhalt" >
    <?=nl2br&#40;$row&#91;'inhalt'&#93;&#41;?></div>
    <div class="Autor" >
    
    <div class="Link">By&#58;<?=$row&#91;'autor'&#93;?> <font color="#EEEEFF">---------------------------------</font>
    Link&#58;Quelle  Delete</div>
    </div></div>
    
    
    <?&#125; ?>
    Aber trotz dem code witrd anstatt [ b ] FETT [/ b ] einfach das im Text ausgegeben..

  6. #6
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    ja da du ein echter witzbold bist.....

    <?=nl2br($row['inhalt'])?>

    ROFL

    $inhalt = str_replace("", "<img src=\"/images/laugh.gif\" border=\"0\" alt=\"\">", nl2br($row['inhalt']));

    <?=$inhalt ?>

  7. #7
    Gast

    Standard

    sorry, aber ich bin Neu in Php, man darf doch wohl nochmal Fehler machen, oder nicht?

    Das klappt jetzt, halb zumindest! :P
    Code:
    $inhalt = str_replace&#40;"&#91;/b&#93;", "[/b]", nl2br&#40;$row&#91;'inhalt'&#93;&#41;&#41;; 
    $inhalt = str_replace&#40;"&#91;b&#93;","[b]", nl2br&#40;$row&#91;'inhalt'&#93;&#41;&#41;;
    Er ersetzt jetzt nur das [ b ] zu und jedoch nciht das [ /b] zu
    Der code ist denke ich mal richtig, muss man evtl noch was mit dem "/" machen?

    Vielen dank schonmal fuer die schnelle Hilfe

  8. #8
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    str_replace('[b]','[b]', nl2br($row['inhalt']));

    so der \ ist bei " ein sonderzeichen und muss wen ndann mit \\ geschrieben werden.

    Ja fehlermachen ist schon erlaubt aber ein wenig auf die variabellen achten also das A nicht B sein kann soviel sollte klar sein.

    Und irgent wie fühle ich mich langsam verarsch da du heute schon der 3te von der sorte bist.

  9. #9
    Gast

    Standard

    Ja, da hast du recht, ich hab aus euphorie nicht auf die Variablen geschaut, das tut mir auch leid, dir desswegen sinnlose Fragen zu stellen!
    Aber komisch ist, das er immer nur den Letzten string ersetzt, hier ein beispiel:
    Code:
    $inhalt = str_replace&#40;"&#91;/b&#93;", "[/b]", $row&#91;'inhalt'&#93;&#41;; 
    $inhalt = str_replace&#40;"&#91;b&#93;","[b]", $row&#91;'inhalt'&#93;&#41;;
    $inhalt = str_replace&#40;"&#91;u&#93;","<u>", $row&#91;'inhalt'&#93;&#41;;
    $inhalt = str_replace&#40;"&#91;/u&#93;","</u>", $row&#91;'inhalt'&#93;&#41;;
    Da ersetzt er nur das [/ u], alleswas dadrueber steht, ist ihm egal.
    wenn ich die letzte zeile weglassen wuerde, wuerde er nur das [ u ] ersetzen.
    Wodran liegt das?

  10. #10
    Gast

    Standard

    Danke, ist schon gut, ich habe es Umgestaltet. Ich habe es einfach alles in ein Array geschrieben, sieht außerdem noch sauberer aus! :P
    Falls es jemand interessiert wie, hier ist der Code:
    Code:
    $search = array&#40;'&#58;&#41;',
                   '&#58;super&#58;',
                   '&#91;b&#93;',
                   '&#91;/b&#93;',
                   '&#91;u&#93;',
                   '&#91;/u&#93;'&#41;;
                   
        $replace = array&#40;'[img]smiles/icon_eek.gif[/img]',
                         '[img]super.gif[/img]',
                         '',
                         '',
                         '<u>',
                         '</u>'&#41;; 
            
            $inhalt = str_replace&#40;$search, $replace, $row&#91;'inhalt'&#93;&#41;;

Ähnliche Themen

  1. PHP: Zeilenumbrüche ersetzten funktioniert nicht
    Von cophp im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 8
    Letzter Beitrag: 08.07.2008, 14:13
  2. php in durch php geladene html-seite
    Von CHoTlMaL im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 8
    Letzter Beitrag: 03.02.2008, 15:34
  3. zeichen in bild durch bild ersetzten xD
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 29.08.2006, 15:49
  4. CSSZenGarden - Text in HTML-Datei durch CSS ersetzen?
    Von Stalafin im Forum HTML & CSS Forum
    Antworten: 2
    Letzter Beitrag: 20.08.2006, 19:04
  5. den standart button durch einen eigenen ersetzten
    Von coda im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 06.07.2005, 17:54

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •