bbcode - inserer une image
le 29/09/2005 à 03:12
Suta
Bonjour c'est encore moi ! :)
voila je voudrai faire un bbcode pour que mes visiteurs puisse inserer une image dans leur messages (via une url, pas d'upload)et que cette image s'affiche en miniature dans le forum.
mon probleme c'est que :
1) je ne retrouve plus votre cours sur le bbcode :p
2) pour faire en sorte que ca insere une miniature dans le message j'ai pas d'idée :S que faut il que j'aprenne pour arriver a le faire moi meme ^^
merci de vos réponses
cordialement
le 30/09/2005 à 10:34
Bzh
Il te faut tout simplement connaitre les expréssions régulières !!!
Regarde le cours sur ce site ou bien fait une petite recherche et tu trouveras ça très facilement !!!
Bye...
le 30/09/2005 à 10:38
Muxy
Tu dois créer un modèle qui comprendra par exemple [img]http://www.monsite.com/images/monimage.gif[/img]
De la même manière, tu as du créer les balises bold ou italique...
Après, pour assurer une gestion de la taille, je ne sais pas (because débutant encore... lol)
Bon courage
Débutant mais motivé !
le 30/09/2005 à 10:44
Bzh
Pour ça, plusieurs solutions:
la première, vivement conseillé, c' est de déclarer la propriété width de ta balise 'img' à une valeur voulu et ne pas déclaré de height. L' image sera redimentionné et gardant les proportions tout en ayant la largeur que tu souhaites.
La deuxièmes, que je te déconseil, c' est d' utiliser le javascript. Tu récupères la taille de l' image et ainsi tu la redimentionnes comme tu veux...
Je te déconseil la deuxième solution pour des problèmes de compatibilité !!!
Mais de toute façon, la gestion de l' image ne se fera que du coté client !!!!
le 03/10/2005 à 23:52
Suta
ok merci pour tout je vais chercher ce cour ^^ (je me disai bien que je l'avai vu quelque part)
a bientot, je vous donnerai des nouvelles :)
le 03/10/2005 à 23:57
Suta
jsui désolé ptetre que je me trompe mais j'ai l'impression que le cours sur le bb-code n'y est plus :S
vous avez un lien parcque jai beau chercher je ne trouve pas...
merci ^^
zebdinou pour les intimes / Blog : http://www.zebden.fr
le 04/10/2005 à 00:09
Suta
hu ? :p jsai pas pourkoi jlai pas trouvé :p
merci beaucoup l'ami
le 10/10/2005 à 03:12
Suta
voila jai enfin fini mon bbcode, le probleme maintenant c'est que je ne sais pas ou le placer...
le forum est le meme que celui décrit dans "Comment faire"
J'aimerai que le bbcode s'applique a tous les messages ecris par les utilisateurs...
je place mon bbcode
function bbcode($text) {
$text = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/img\]#sie", "'<img src=\\1' . str_replace(' ', '%20', '\\3') . '>'", $text);
$text = preg_replace("#\[url\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/url\]#sie", "'<a href=\"\\1' . str_replace(' ', '%20', '\\3') . '\" target=blank>\\1\\3</a>'", $text);
$text = preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/", "<a href=$1 target=blank>$2</a>", $text);
$text = preg_replace("/\[b\](.+?)\[\/b\]/", "<b>$1</b>", $text);
$text = preg_replace("/\[i\](.+?)\[\/i\]/", "<i>$1</i>", $text);
$text = preg_replace("/\[u\](.+?)\[\/u\]/", "<u>$1</u>", $text);
$text = preg_replace("/\[code\](.+?)\[\/code\]/", "<table width=100%><tr><th align=left>Code :</th></tr><tr><td align=left><code>$1</code></td></tr></table>", $text);
$text = preg_replace("/\[quote\](.+?)\[\/quote\]/", "<table width=100%><tr><th align=left>citation :</th></tr><tr><td align=left>$1</td></tr></table>", $text);
$text = preg_replace("/\[quote=(.+?)\](.+?)\[\/quote\]/", "<table width=100%><tr><th align=left>$1 :</th></tr><tr><td align=left>$2</td></tr></table>", $text);
$text = preg_replace("/\[color=(.+?)\](.+?)\[\/color\]/", "<font color=$1>$2</font>", $text);
return $text;
}
donc je le place juste avant mon message
mais ca ne marche pas :
Fatal error: Cannot redeclare bbcode() (previously declared in /var/www/free.fr/e/b/bf02/forum/lire_sujet.php:72) in /var/www/free.fr/e/b/bf02/forum/lire_sujet.php on line 72
donc je me demande ou il faut inserer le bbcode :S
merci davance ;)
le 10/10/2005 à 04:37
Suta
oula, ce que j'ai ecris me parrait pas clair du tout ^^ !
désolé pour le dérangement, je vais chercher un peu plus et alors je reviendrai avec des questions plus clair
a la prochaine