FONCTION BBCODE, COMPATIBLE W3C

klicksoe Messages postés 38 Date d'inscription vendredi 9 mars 2007 Statut Membre Dernière intervention 23 avril 2009 - 8 août 2008 à 13:06
 Utilisateur anonyme - 17 août 2008 à 18:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47548-fonction-bbcode-compatible-w3c

Utilisateur anonyme
17 août 2008 à 18:07
oui je sais que le rendu est le même (en tout cas sous firefox et sous ie), pis tu m'a converti je vais mettre des strong a la place..

au niveau de mon savoir j'estime avoir pas mal de notions que j'ai acquises ici et la sur le web. il est certain que tu en a plus que moi a en juger ton profil car tu fait de l'informatique ton métier et moi un simple loisir ( mon domaine c'est les medocs).. je m'incline donc.
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
17 août 2008 à 17:56
Tu n'as pas l'air de savoir de quoi tu parles !

Fais moi plaisir, tu vas tester un b, un strong et un span avec un font-weight:bold; tu verras que le rendu est le même : un texte en gras !
Utilisateur anonyme
17 août 2008 à 17:14
et que son père bill gates créa une grosse merde appelé Internet explorer ;-)
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
17 août 2008 à 16:02
> bah selon moi le plus dur lorsqu'on fait un site c'est d'avoir toujours le même rendu

C'est alors que dieu inventa la CSS !
Utilisateur anonyme
17 août 2008 à 15:44
bah selon moi le plus dur lorsqu'on fait un site c'est d'avoir toujours le même rendu... si j'ai décidé d'afficher un code en gras , je veux qu'il apparaisse en gras tout le temps.

mais je comprend votre point de vue

pour ceux qui veulent mettre strong a la place de mes span pas de soucis..
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
16 août 2008 à 18:31
+1 avec Palleas ;)
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
16 août 2008 à 15:10
> et sont des balise qui serve a marquer l'importance du texte qu'ele contiennent. leur rendu graphique est variable d'un navigateur a l'autre. c'est pour ca que je traduit la balise [b] de la façon ou je le fait.

Oui, mais non, il n'y a aucune sémantique dans l'utilisation de b, ou est la séparation forme/fond ?
Utilisateur anonyme
16 août 2008 à 14:42
bonjour a tous j'ai fait quelques modifs, :

-remplacement des double quotes par des simple quotes
-modification interprétation de [quote] et [code]
-suppression des target="_blank"

pour ce qui est de la méthode utilisé avec les fonction je modifierai ça quand j'aurai un peu plus de temps.

je pense qu'il y a déjà un mieux, bien que ca soit loin d'être parfait.

@webdeb : et sont des balise qui serve a marquer l'importance du texte qu'ele contiennent. leur rendu graphique est variable d'un navigateur a l'autre. c'est pour ca que je traduit la balise [b] de la façon ou je le fait.

@klicksoe : j'ai deja testé Tiny MCE et puis je suis revenu au bbcode.

@PastisD1 : effectivement c'est corrigé.
PastisD1 Messages postés 16 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 11 août 2008
11 août 2008 à 02:38
De plus target="_blank" n'est pas accepter en xhtml 1.0 strict ^^
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
8 août 2008 à 14:48
Beaucoup trop complexe comme code. Comme le dit Coucou747, on peut passer des arrays à la fonction str_replace(). Donc on peut déjà faire en une passe ce que tu fais en plusieurs... De même pour les preg_replace() on peut largement les optimiser en utilisant par exemple des parenthèses non capturantes.

Enfin, ton code n'a rien de conforme au W3C. Il l'est d'un point de vue purement syntaxique mais surement pas d'un point de vue sémantique. Depuis quand utilise-t-on des tableau HTML pour représenter des blocs de citation alors qu'il existe les tags q, blockquote et cite pour cela ? La mise en exergue et gras s'effectue respectivement avec les tags et .

Je te laisse revoir et corriger ta source ;)
Palleas_44 Messages postés 130 Date d'inscription lundi 12 décembre 2005 Statut Membre Dernière intervention 19 avril 2009
8 août 2008 à 14:44
J'aurais largement preféré une regexp, personnelement :)
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
8 août 2008 à 14:17
si tu lis la doc de str_replace, tu verras qu'on peut lui passer des array en parametre, de facon a ne faire qu'un seul str_replace.
klicksoe Messages postés 38 Date d'inscription vendredi 9 mars 2007 Statut Membre Dernière intervention 23 avril 2009
8 août 2008 à 13:06
Salut,

ton code est simpliste et je dirait même trop simpliste et il y a quelques petites choses à revoir.
Par exemple, oublier les doubles quotes pour en mettre des simples.

Une autre petite chose qui la concerne l'utilisation en elle-même :
Tu fais à chaque fois un remplacement, mais si la personne oublie le backslashe, cela ne marche plus, il faudrait que tu essaies d'utiliser les regex afin de detecter l'abscence ou non du backslashe cela arrangerai bien des problèmes futurs ^^.

Perso, j'ai abandonné le BBCode au profit de Tiny MCE, mais on sait jamais, ça peux servire à quelqu'un.