PHP Inform

PHP Information & Web Hosting
 

PHP function to strip javascript

function strip_javascript($filter){

// realign javascript href to onclick 
$filter = preg_replace(”/href=(['\"]).*? javascript:(.*)? 
\\1/i”, “onclick=' $2 ‘”, $filter);

//remove javascript from tags 
while( preg_match(”/<(.*)?javascript. *?\(.*?((?>[^()]+) 
|(?R)).*?\)?\)(.*)?>/i”, $filter)) 
$filter = preg_replace(”/<(.*)? javascript.*?\(.*?((?> 
[^()]+)|(?R)).*?\)?\)(.*)?>/i” , “<$1$3$4$5>“, $filter);

// dump expressions from contibuted content 
if(0) $filter = preg_replace(”/:expression\(.* ?((?>[^ 
(.*?)]+)|(?R)).*?\)\)/i”, “”, $filter);

while( preg_match(”/<(.*)?:expr.*?\(. *?((?>[^()]+)|(? 
R)).*?\)?\)(.*)?>/i”, $filter)) 
$filter = preg_replace(”/<(.*)?:expr.*?\ (.*?((?>[^()] 
+)|(?R)).*?\)?\)(.*)?>/i”, “<$1$3$4$5>“, $filter);

// remove all on* events 
while( preg_match(”/<(.*)?\s?on.+?=?\ s?.+?(['\"]).*?\\2 
\s?(.*)?>/i”, $filter) ) 
$filter = preg_replace(”/<(.*)?\s?on.+?= ?\s?.+? 
(['\"]).*?\\2\s?(.*)?>/i”, “<$1$3>“, $filter);

return $filter; 
}