BBCode für Code ( wie hier im Forum )

Mmmh.. bei mir kommen da auch diverse Fehler, je nach Code:( ...und in so einem Code können viele Zeichen stören.

Vorschlag:
PHP:
$neuertext= preg_replace(
                          '@\[php\](.*)\[/php\]@isUe',
                          "'<hr><b>PHP-Kot</b><hr>'.highlight_string(stripcslashes('\\1'),1).'<hr>'", 
                          preg_replace(
                                        '@\\\([ntr])@',
                                        "preg_quote(\\1)",
                                        $neuertext)
                        );
 
Hi,
wenn ich
PHP:
<?php 

    function highlight_php($data) 
    { 
        $data = preg_replace('/^(?:\x0A|\x0D\x0A|\x0D|\x0C)+|(?:\x0A|\x0D\x0A|\x0D|\x0C)+$/', '', $data); 
        return '<pre class="php">'.highlight_string($data, true).'</pre>'; 
    } 

    $neuertext = preg_replace('/\[php\](.+?)\[\/php\]/ise', 'highlight_php($neuertext)', $neuertext); 

?>

Mache, dann geht das highlight, aber das ist ja blöd, weil dann alles gehighlighted ist. Aber mit highlight_php($1) gehts leider nicht.

Gruß GalaxyWarrior
 
Hi, habe es jetzt mit dem highlight hinbekommen, der Code ist

PHP:
	function bb_php($str){
		$str = preg_replace('/^(?:\x0A|\x0D\x0A|\x0D|\x0C)+|(?:\x0A|\x0D\x0A|\x0D|\x0C)+$/', '', $str);
		$str = str_replace("]\n", "]", $str);
		$match = array('#\[php\](.*?)\[\/php\]#se');
		$replace = array("'<table border=1 cellspacing=0 cellpadding=2 bgcolor=EFEFEF width=95% align=center><tr><td><i>PHP Code:</i><div class=php><p class=text>'.highlight_string(stripslashes('$1'), true).'</p></div></tr></td></table>'");
		return preg_replace($match, $replace, $str);
	}

Allerdings lässt sich der Text immernochnicht scrollen, er wird am Ende des Divs umgebrochen. In der CSS Class php steht aber
Code:
overflow:auto;

Hat jemand ne Idee?

Gruß GalaxyWarrior
 
Hat denn keiner eine Idee? Und es hat sich noch ein Weiteres Problem ergeben. Hat jemand ne ahnung wie ich das HTML4.01 Valid mache? Denn normal ist es ja z.B. border="1" , und in meinem script ja nur border=1 , das ist nicht HTML4.01 Valid

Gruß
der auf Hilfe hoffende GalaxyWarrior
 
Da ja nun dein PHP-Problem gelöst wurde, kannst du einen Thread im HTML bzw CSS Forum aufmachen und dort deine Frage stellen.

Und wegen dem "validieren" musst du mal bei google "w3c validator" eingeben, der sagt dir, was alles falsch ist!

mfg
 
Jo, dann poste ich ma bei CSS, und was falsch ist habe ich doch geschrieben, nur weiß ich nicht wie ich es weg mache, denn dann geht der Script nichtmher. Und somit ist doch noch eine PHP Frage offen ;-] . Und woher soll ich denn wissen, dass es nicht HTML valid ist, wenn nicht vom Validator? ^^

Gruß GalaxyWarrior
 
Zurück