Aller au contenu

BBcode


Sujets conseillés

Posté (modifié)

Bonsoir,

voilà, j'éssai d'ajouter une balise "Musique" pour mon BBcode.

Mon problème est que dans le code à générer il y a 2 fois l'url de la musique.

Voilà le code à générer

<object type='application/x-shockwave-flash'

data='source/dewplayer.swf?mp3=source/xxx.mp3' width=200 height=20> <param name='movie' value='source/dewplayer.swf?mp3=source/xxx.mp3'/></object>

Voilà mon BBcode

<?php
//bbcode
function bbcode($le_texte){
$texte = ''.$le_texte.'';
//exemple de traitement des autres balise
$search1 = array("[center]");
$search2 = array("[/center]");
$texte = str_replace($search1,"<center>",str_replace($search2,"</center>",$texte));
//le traitement que je n'arrive pas à résoudre
$search1 = array("[musique=");
$search2 = array("*musique]");
//la il faudrait récupérer et extraire ce qui a entre les balises musique pour construire le code à afficher
$musique = je n y arrive pas.mp3
$texte = str_replace($search1,"<object type='application/x-shockwave-flash'
data='$musique' width=200 height=20> <param name='movie' value='",str_replace($search2,"'/></object>",$texte));
return $texte;
}
?>

Voilà!

J'éspère avoir été clair!

En gros comment récupérer et extraire une chaîne de caractère qui commence par [musique= et finit par *musique] dans un texte!

Merci d'avance pour votre aide;)

Modifié par sparh
Posté

Commence par lire ça : http://expreg.com/

Puis pour ton bbcode, ca sera quelque chose comme cela :

$str = preg_replace('`\[music=(.*?)\]`', '<myMusicTag>$1</myMusicTag><myMysicTag2>$1</myMusicTag2>', $str);

Posté

Merci, j'ai pas mal de lecture ;)

Et j'ai réussis, voilà ton code adapté

$texte = preg_replace('`\[musique=(.*?)\*musique\]`', '<object type="application/x-shockwave-flash"
data="$1" width=200 height=20> <param name="movie" value="$1"/></object>', $texte);

Franchement merci beaucoup, je sais pas si c'est ton site mais il est vraiment instructif.

Posté

Non ce n'est pas mon site. Mais l'un de mes 10 favoris préférés ;)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...