[PHP] - Suppr le contenu des balises <script></script> d'une page HTML

- Suppr le contenu des balises <script></script> d'une page HTML [PHP] - PHP - Programmation

Marsh Posté le 06-12-2006 à 09:21:39    

 Bonjour à tous,  
 
  J’ai une page html qui contient plusieurs JavaScripts et j’aimerais tous les supprimer.  
 
Ma page est constituée de la façon suivante :  
 

Code :
  1. <html>
  2.   <head>
  3.     …
  4.   </head>
  5.   <body>
  6.     <script …>
  7.     …
  8.     </script>
  9.     …
  10.     <script …>
  11.     …
  12.     </script>
  13.     <script …>
  14.     …
  15.     </script>
  16.   </body>
  17. </html>


 
  J’ai bien essayé de les supprimer avec la function eregi_replace est une expression régulière :  
 

Code :
  1. $text = eregi_replace("<script(.*)</script>", "", $text)


 
  Mais le soucis c’est que cette fonction me supprime tout ce qu’il y a entre la première balise <script> et la dernière </script>
 
  Merci d’avance.
   :jap:  

Reply

Marsh Posté le 06-12-2006 à 09:21:39   

Reply

Marsh Posté le 06-12-2006 à 09:25:18    

déjà eregi = caca, vaut mieux utiliser preg. Ensuite en transformant le .* en lazy :
 

Code :
  1. preg_replace('/<script(.+?)<\/script>/', '', $text);

Reply

Marsh Posté le 06-12-2006 à 09:29:01    

Ou sinon en DOM y'a moyen [:dawak]
 

Code :
  1. $dom = new DOMDocument;
  2. $dom->load('pouet.html');
  3. foreach($dom->getElementsByTagName('script') as $script) {
  4.   $script->parentNode->removeChild($script);
  5. }


Ca devrait marchouiller :??:


Message édité par FlorentG le 06-12-2006 à 09:29:21
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed