IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Supprimer toutes les balises script et ce qu'elles contiennent [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut Supprimer toutes les balises script et ce qu'elles contiennent
    Bonsoir,
    je désire supprimer d'une page html, toutes les balises scripts et ce qu'il y a à l'intérieur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
       $blocnote_riche = eregi_replace("<script[^>.]*>","",$blocnote_riche);
       $blocnote_riche = eregi_replace("</script[^>.]*>","",$blocnote_riche);
    supprime bien les balises mais le contenu demeure.
    Par contre, je veux conserver tout le reste, pour bénéficier de la mise en page .

    Des idées sur une fonction simple ou faut-il que je balaie le fichier pour récupèrer les positions des balises de début et de fin et que supprime ce qu'il y a entre le début de la balise de début et la fin de la balise de fin ?
    Si oui, un petit bout de code exemple m'avancerait bien ...

    --
    Cordialement,
    Christophe Charron
    Cordialement,
    Christophe Charron

  2. #2
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, en fait avec ton script tu ne fais que supprimer la balise <script> puis la balise </script>. Tu peux utiliser ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $blocnote_riche = preg_replace('@<script[^>]*?>.*?</script>@si', '', $blocnote_riche);
    Ce code provient de PHP.net : http://fr2.php.net/manual/fr/function.preg-replace.php ; le 1er exemple correspond justement à ce que tu veux faire.

    Bon développement

    PS : préfère preg_replace à ereg_replace ou eregi_replace
    Citation Envoyé par PHP.net
    Astuce : preg_replace(), qui utilise la syntaxe des expressions rationnelles compatibles PERL, est une alternative plus rapide de ereg_replace().
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  3. #3
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Citation Envoyé par Nesmontou
    Salut, en fait avec ton script tu ne fais que supprimer la balise <script> puis la balise </script>. Tu peux utiliser ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $blocnote_riche = preg_replace('@<script[^>]*?>.*?</script>@si', '', $blocnote_riche);
    Ce code provient de PHP.net : http://fr2.php.net/manual/fr/function.preg-replace.php ; le 1er exemple correspond justement à ce que tu veux faire.

    Bon développement

    PS : préfère preg_replace à ereg_replace ou eregi_replace
    Bonsoir et merci pour la prompte réponse ... presque presque mais dans ce cas, comment puis-je échapper le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    / de fin de balise script ? de
     $blocnote_riche = preg_replace('@<script[^>]*?>.*?</script>@si', '', $blocnote_riche);
    Cordialement,
    Christophe Charron

  4. #4
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Citation Envoyé par Christophe Charron
    Bonsoir et merci pour la prompte réponse ... presque presque mais dans ce cas, comment puis-je échapper le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    / de fin de balise script ? de
     $blocnote_riche = preg_replace('@<script[^>]*?>.*?</script>@si', '', $blocnote_riche);
    Oups, désolé : la mauvaise coloration syntaxique de mon éditeur (PSPad en l'occurrence) m'a induit en erreur Il interprète le comme fin de balise php !!
    Cordialement,
    Christophe Charron

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. supprimer toutes les balises d'un code html (regex?)
    Par le y@m's dans le forum Langage
    Réponses: 5
    Dernier message: 21/01/2014, 10h08
  2. Supprimer toutes les balises html
    Par kaayna dans le forum Langage
    Réponses: 4
    Dernier message: 17/05/2011, 18h23
  3. Réponses: 2
    Dernier message: 11/06/2008, 09h32
  4. Supprimer toutes les partitions Dos
    Par Houssem dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 25/08/2005, 00h36
  5. Supprimer TOUTES les tables d"une bd
    Par perlgirl dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 14/12/2004, 12h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo