anoniem Geplaatst: 5 januari 2003 Delen Geplaatst: 5 januari 2003 Voor mijn site heb ik een script gemaakt dat o.a. PHP-code highlight. Het probleem is dat de variabelen wegvallen, omdat PHP ze als echte variabelen opvat die niet bestaan. Daarom wordt dit: [code:1:d9c191adad]<? $var = "mijn var"; echo "$var"; ?>[/code:1:d9c191adad] Na het parsen: [code:1:d9c191adad]<? = "mijn var"; echo ""; ?>[/code:1:d9c191adad] Het escapen van de variabele tekens helpt ook niet. Wie weet hoe ik dit op kan lossen? Quote Link naar reactie
anoniem Geplaatst: 5 januari 2003 Auteur Delen Geplaatst: 5 januari 2003 misschien is het handig als je het hele script even post? kijk eens op: http://62.250.9.120/library.php?sid=6113 daat staat ook zoiets, wellicht kan je er wat mee.. t. Quote Link naar reactie
anoniem Geplaatst: 5 januari 2003 Auteur Delen Geplaatst: 5 januari 2003 [code:1:0ab575f699]function php_highlight($input) { ob_start(); $input = stripslashes($input); $input = str_replace("<", "<", $input); $input = str_replace(">", ">", $input); $input = str_replace(""", "\"", $input); $input = str_replace("<br />", " ", $input); $input = str_replace("©", "(c)", $input); $input = str_replace("™", "(tm)", $input); $input = str_replace("®", "(r)", $input); $input = str_replace("<img src=\"smiles/smile.gif\">", ":-)", $input); $input = str_replace("<img src=\"smiles/lach.gif\">", ":D", $input); $input = str_replace("<img src=\"smiles/boos.gif\">", ":|", $input); $input = str_replace("<img src=\"smiles/verbaasd.gif\">", ":O", $input); $input = str_replace("<img src=\"smiles/rolleyes.gif\">", "8|", $input); $input = str_replace("<img src=\"smiles/sad.gif\">", ":(", $input); $input = str_replace("<img src=\"smiles/slaap.gif\">", ":zzz", $input); $input = str_replace("<img src=\"smiles/tong.gif\">", ":lol", $input); $input = str_replace("<img src=\"smiles/wink.gif\">", ";)", $input); $input = str_replace("<img src=\"smiles/cool.gif\">", "8)", $input); $output = highlight_string($input, TRUE); return $output; } [/code:1:0ab575f699] En dit replaced alles: [code:1:0ab575f699]$bericht = preg_replace ("/(<\?php|<\?)((.|\n)*?)(\?>)/ise", 'php_highlight("\\0")', $bericht);[/code:1:0ab575f699] Ik gebruik < omdat ik daarvoor ergens htmlspecialchars(); gedraaid heb. Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen