[Réglé] Fonction ereg_replace

Ici sera assuré le support pour n'importe quel MOD non présent dans la base de données de phpBB-fr.

Modérateur: Equipe

Règles du forum
A lire impérativement sur notre page : Règlement

- Plus aucun support n'est délivré pour phpBB2 depuis le 1er janvier 2009
Partager sur FacebookPartager sur TwitterPartager sur Google+

[Réglé] Fonction ereg_replace

Messagepar sbourdon » 07 Nov 2008 à 13:55

Bonjour,

Mon forum inclus le texte des messages dans les emails de notification envoyés aux utilisateurs. Puisque j'ai installé le BBCode HTML, je voudrais supprimer tout ce qui est compris entre les balises [html:xxx] et [/html:xxx] des messages, question de rendre le tout plus lisible...

Je ne comprends pas grand chose aux fonctions preg_replace et ereg_replace, mais je procède par essais et erreurs en me basant sur le code existant dans le fichier bbcode.php.

Voilà donc ce à quoi j'en suis arrivé:
Code: Tout sélectionner
$post_text = trim( ereg_replace("[html:([a-zA-Z0-9])](.*?)[/html:([a-zA-Z0-9])]", "", $post_text ) );


Le tout supprime bel et bien le code HTML situé entre les balises bbcode [html], mais un message d'erreur est retourné:
Code: Tout sélectionner
ereg_replace() [function.ereg-replace]: REG_BADRPT in ...


Pourriez-vous m'indiquer l'erreur dans cette ligne de code afin que le tout soit pleinement fonctionnel?


Merci beaucoup! :)
Modifié en dernier par sbourdon le 07 Nov 2008 à 22:41, modifié 1 fois.
sbourdon
Posteur habitué
Posteur habitué
 
Messages: 243
Enregistré le: 17 Oct 2004 à 00:39

Re: Fonction ereg_replace

Messagepar spitfire pat » 07 Nov 2008 à 14:33

tu devrais slasher les crochets, sinon ereg les considère comme des ouvertures et des fermetures d'intervalle
Code: Tout sélectionner
$post_text = ereg_replace('\\[html:([a-zA-Z0-9])\\](.*?)\\[/html:([a-zA-Z0-9])\\]', '', $post_text);
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 15:43
Localisation: bourgogne

Re: Fonction ereg_replace

Messagepar sbourdon » 07 Nov 2008 à 15:42

Merci pour cette réponse!

Malheureusement, j'ai toujours le même message d'erreur... :(
Peut-être qu'il serait préférable d'utiliser preg_replace? Je ne suis pas certain de la différence entre les deux...

En résumé, je veux simplement qu'un message qui ressemblerait à ceci:

texte posté sur le Forum

[html:1a2b3c] code HTML divers [/html:1a2b3c]

suite du texte posté sur le Forum


soit modifié ainsi:

texte posté sur le Forum

suite du texte posté sur le Forum



Des suggestions?

Merci encore!
sbourdon
Posteur habitué
Posteur habitué
 
Messages: 243
Enregistré le: 17 Oct 2004 à 00:39

Re: Fonction ereg_replace

Messagepar spitfire pat » 07 Nov 2008 à 18:56

oui, chez moi aussi ça a entrainé cette erreur
par contre avec preg_replace ça marche sans problème
Code: Tout sélectionner
$post_text = preg_replace('#\[html:([a-zA-Z0-9]+)\](.*?)\[/html:([a-zA-Z0-9]+)\]#si', '', $post_text);
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 15:43
Localisation: bourgogne

Re: Fonction ereg_replace

Messagepar sbourdon » 07 Nov 2008 à 22:40

Excellent!
Fidèle à ton habitude, tes réponses sont claires, nettes et précises; vraiment, ton aide est très appréciée!

Un grand merci! :mrgreen:
sbourdon
Posteur habitué
Posteur habitué
 
Messages: 243
Enregistré le: 17 Oct 2004 à 00:39

Re: [réglé] Fonction ereg_replace

Messagepar Morgyanne » 08 Nov 2008 à 14:36

Salut sbourdon,

C'est désormais l'icône de sujet Image qui remplace toute mention [Réglé] à l'édition du premier message du sujet.
Cette fois, je le fais pour toi ;).

@+
Morgyanne :)
« What a filthy job !
Could be worse.
How ?
Could be rainin'. »

From Young Frankenstein
Avatar de l’utilisateur
Morgyanne
Marvelous girl
Marvelous girl
 
Messages: 32244
Enregistré le: 21 Mar 2005 à 12:28
Localisation: Juste derrière toi...


Retourner vers MODs indépendants de la base

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités