2012-07-03 77 views

回答

0

你可以只使用.replacepreg_replace的JavaScript和PHP分別。

你的正則表達式模式將<script.*</script>

0

在客戶端..你可以在HTML追加到iframe

然後,你可以試試..

$(..documentElement).find('script').remove(); 

var htmlContent = $(..documentElement).html(); 

然後通過HTML轉移到服務器端。沒有嘗試過,只是一個建議。

0
   class html 
{ 
    var $dir; 
    var $rootdir; 
    var $name; 
    var $dirname; 
    var $url; 
    var $time; 
    var $dirtype; 
    var $nametype; 

    function html($nametype='name',$dirtype='year',$rootdir='html') 
    { 
     $this->setvar($nametype,$dirtype,$rootdir); 
    } 

    function setvar($nametype='name',$dirtype='year',$rootdir='html') 
    { 
     $this->rootdir=$rootdir; 
     $this->dirtype=$dirtype; 
     $this->nametype=$nametype; 
    } 

    function createdir($dir='') 
    { 
     $this->dir=$dir?$dir:$this->dir; 

     if (!is_dir($this->dir)) 
     { 
      $temp = explode('/',$this->dir); 
      $cur_dir = ''; 
      for($i=0;$i<count($temp);$i++) 
      { 
       $cur_dir .= $temp[$i].'/'; 
       if (!is_dir($cur_dir)) 
       { 
       @mkdir($cur_dir,0777); 
       } 
      } 
     } 
    } 

    function getdir($dirname='',$time=0) 
    { 
     $this->time=$time?$time:$this->time; 
     $this->dirname=$dirname?$dirname:$this->dirname; 

     switch($this->dirtype) 
     { 
     case 'name': 

     if(empty($this->dirname)) 
      $this->dir=$this->rootdir;fenzu.qqq80.com 
     else 
      $this->dir=$this->rootdir.'/'.$this->dirname; 
     break; 
     case 'year': 
     $this->dir=$this->rootdir.'/'.date("Y",$this->time); 
     break; 

     case 'month': 
     $this->dir=$this->rootdir.'/'.date("Y-m",$this->time); 
     break; 

     case 'day': 
     $this->dir=$this->rootdir.'/'.date("Y-m-d",$this->time); 
     break; 
     } 

     $this->createdir(); 

     return $this->dir; 
    } 

    function geturlname($url='') 
    { 
     $this->url=$url?$url:$this->url; 

     $filename=basename($this->url); 
     $filename=explode(".",$filename); 
     return $filename[0]; 
    } 

    function geturlquery($url='') 
    { 
     $this->url=$url?$url:$this->url; 

     $durl=parse_url($this->url); 
     $durl=explode("&",$durl[query]); 
     foreach($durl as $surl) 
     { 
      $gurl=explode("=",$surl); 
      $eurl[]=$gurl[1]; 
     } 
     return join("_",$eurl); 
    } 

    function getname($url='',$time=0,$dirname='') 
    { 
     $this->url=$url?$url:$this->url; 
     $this->dirname=$dirname?$dirname:$this->dirname; 

     $this->time=$time?$time:$this->time; 

     $this->getdir(); 

     switch($this->nametype) 
     { 
     case 'name': 
     $filename=$this->geturlname().'.htm'; 
     $this->name=$this->dir.'/'.$filename; 
     break; 

     case 'time': 
     $this->name=$this->dir.'/'.$this->time.'.htm'; 
     break; 

     case 'query': 
     $this->name=$this->dir.'/'.$this->geturlquery().'.htm'; 
     break; 

     case 'namequery': 
     $this->name=$this->dir.'/'.$this->geturlname().'-'.$this->geturlquery().'.htm'; 
     break; 

     case 'nametime': 
     $this->name=$this->dir.'/'.$this->geturlname().'-'.$this->time.'.htm'; 
     break; 

     } 
     return $this->name; 
    } 

    function createhtml($url='',$time=0,$dirname='',$htmlname='') 
    { 
     $this->url=$url?$url:$this->url; 
     $this->dirname=$dirname?$dirname:$this->dirname; 
     $this->time=$time?$time:$this->time; 

     if(empty($htmlname)) 
      $this->getname(); 
     else 
      $this->name=$dirname.'/'.$htmlname; 

     $content=file($this->url) or die("Failed to open the url ".$this->url." !");; 
     $content=join("",$content); 
     [email protected]($this->name,"w") or die("Failed to open the file ".$this->name." !"); 

     if(@fwrite($fp,$content)) 
     return true; 
     else 
     return false; 
     fclose($fp); 
    } 

    function deletehtml($url='',$time=0,$dirname='') 
    { 
     $this->url=$url?$url:$this->url; 
     $this->time=$time?$time:$this->time; 

     $this->getname(); 

     if(@unlink($this->name)) 
     return true; 
     else 
     return false; 
    } 

    /** 
    * function::deletedir() 
    * 刪除目錄 
    * @param $file 目錄名(不帶/) 
    * @return 
    */ 
    function deletedir($file) 
    { 
     if(file_exists($file)) 
     { 
      if(is_dir($file)) 
      { 
       $handle =opendir($file); 
       while(false!==($filename=readdir($handle))) 
       { 
        if($filename!="."&&$filename!="..") 
         $this->deletedir($file."/".$filename); 
       } 
       closedir($handle); 
       rmdir($file); 
       return true; 
      } 
      else 
      { 

       unlink($file); 
      } 
     } 
    } 

}