Einzelnen Beitrag anzeigen
Alt 09.01.2009, 12:23   #5
RaistlinMajere
Inventar
 
Registriert seit: 06.04.2001
Alter: 44
Beiträge: 2.343


Standard

ok, hier mal etwas genauer, was ich genau tun möchte:

ich möchte ein stück code, das aus einer DB ausgelesen wird und u.a. kommentare enthält (welche mit # gekennzeichnet sind), auf einer seite korrekt und nicht durch PHP interpretiert darstellen.
das funktioniert auch wunderbar mit htmlentities($code, ENT_QUOTES, 'UTF-8')

das problem ist nun, daß sich auf dieser seite ein link zu einem anderen PHP-script befindet, der code soll mit document.location="bla.php?param1=$param1&param2=$ param2&..." als übergabeparameter entsprechend übergeben werden, um dort dann wiederum dargestellt zu werden.

an und für sich sollte das mit htmlentities wieder kein problem sein. nur wenn ich dann auf der zielseite den parameter ausgeben lasse, fehlen leerzeilen sowie alles, was nach dem ersten # ist (weils offenbar als kommentar interpretiert wird).

das mit den leerzeilen habe ich so hinbekommen (obwohl das eigentlich doch durch htmlentities erledigt werden sollte, ist aber komischerweise nicht so):

$param1 = htmlentities(str_replace("\n","<br>",$code), ENT_QUOTES, 'UTF-8');

bei den # stehe ich hingegen immer noch an.
natürlich könnte ichs auch einfach über str_replace("#","<HASH>",$str) machen und <HASH> dann vor der ausgabe wieder zurückwandeln, aber da muß es doch eine professionellere lösung geben.
____________________________________
"Life is like a box of rockets," said the Marine. "You never know what you´re gonna ret."
Then he pulled the trigger of his BFG9000.

Geändert von RaistlinMajere (09.01.2009 um 12:45 Uhr).
RaistlinMajere ist offline   Mit Zitat antworten