HTML Code ausgeben anstatt interpretieren

oh... stimmt ja! ich war immer der meinung, dass das komplette ersetzenmuster dann als programmcode interpretiert wird! ;-)
 
Hallo, also ich benutze jetzt folgenden Code um alles zwischen [ code ] und [ /code ] umzuwandeln

Code:
$text = preg_replace("=\[code\](.*)\[\/code\]=esiU","htmlspecialchars('\$1')",$text);
echo $text;


Der Text soll mal Html-code enthalten, kann mir einer sagen wie ich es schaffe, dass nicht der ganze Text hintereinander weg sondern wie mit < pre > formatiert ausgegeben wird oder das wenigstens die < br > erhalten bleiben?


Danke
 
Code:
function docode( $str_code ) {
    $str_code = "<pre>".htmlspecialchars( $str_code )."</pre>";
}

$text = preg_replace("=\[code\](.*)\[\/code\]=esiU","docode('\$1')",$text);
So?
<br>s werden in Pre-Blöcken nicht gebraucht, da die normalen Zeilenumbrüche (\n) interpretiert werden.
 
und damit das ganze auch noch Farbe bekommt
->
PHP:
/*
 * somit kannste gleich ein Mysql_Result durchlaufen lassen
 * also
 * $res = mysql_query("select * from $table");
 * while($row = mysql_fetch_array($res))
 * $row = charToAscii($row);
 * das ich auch noch { } ersetze ist absichtlich!
 * wenn du mit Templates arbeitest und in diesem Text { } sind
 * dann würde er den Text nicht anzeigen weil er meint das es
 * ein Platzhalter für Variablen ist!
*/

function charToAscii($array){
	foreach($array as $type => $value){
		$array[$type] = str_replace("<","<",$value);
		$array[$type] = str_replace(">",">",$array[$type]);
		$array[$type] = str_replace("{","{",$array[$type]);
		$array[$type] = str_replace("}","}",$array[$type]);
	}
	return $array;
}

//code ausrichtung
$text=preg_replace("/\[code\](.*)\[\/code\]/msiU", "<blockquote><pre><smallfont>code:<hr>\\1<hr></blockquote></pre></smallfont>", $text); 
$text = highlight_string ($text);
 
Zuletzt bearbeitet:
Hey :)

bei mir will diese Code-Funktion nicht funktionieren :(

Code:
<code><div class=h1>bla</div></code>

Habe dazu auch bei Selfhmtl nachgesehen und Quelltext aus der Seite kopiert, jedoch will es einfach nicht funktionieren :(

//EDIT

hab mir jetzt den Qellcode vom Forum gekrallt :)
 
Zuletzt bearbeitet:
Zurück