Aller au menu - Aller au contenu
Inscris-toi au e-camp "Héberge ton jeu Facebook sur Azure" de Microsoft vendredi 25 mai à 13h30 !

Un BBcode complet

... et gratuit en plus ;)

Pour accéder à cette section
Connectez-vous !
connexion_rpx

Offre d'emploi : Développeur Web PHP/Drupal (H/F)

Page 1  2  Suivante
Auteur Message
1 visiteur sur ce sujet (1 Anonyme)
Page 1  2  Suivante
Hors ligne Xavier5293 # Posté le 14/03/2010 à 16:05:03
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Salut mes amis Zéros.

Je crée un topic aujourd'hui pour partager avec vous un BBCode complet et fonctionnel.
J'ai moi même cherché pendant longtemps un code similaire sans succès, et maintenant que j'en ai trouvé un je le poste ici pour le partager avec ceux qui comme moi ne trouvent pas le temps ou n'ont pas l'envie d'en créer un :D

Attention, je ne suis pas l'auteur de ce code, mais c'est un code libre que j'ai trouvé sur le web, vous pouvez donc vous en servir, le modifier, le partager, etc.


Voici donc le code
Code : PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?

//BBcode

// Bloc des balises [url]-[/url]
	$texte = preg_replace('`\[url=([http://].+?)](.+?)\[/url]`si','<a href="#" onclick="window.open(\'$1\',\'popup\');" title="$1">$2</a>',$texte); 
	$texte = preg_replace('`\[url=(.+?)](.+?)\[/url]`si','<a href="#" onclick="window.open(\'http://$1\',\'popup\');" title="$1">$2</a>',$texte); 
	$texte = preg_replace('`\[url]([http://].+?)\[/url]`si','<a href="#" onclick="window.open(\'$1\',\'popup\');" title="$1">$1</a>',$texte); 
	$texte = preg_replace('`\[url](.+?)\[/url]`si','<a href="#" onclick="window.open(\'http://$1\',\'popup\');" title="$1">$1</a>',$texte); 
	     
	// Bloc des balises [b]-[/b]
	$texte = preg_replace('#\[b](.+?)\[/b]#si','<strong>$1</strong>',$texte); 
	
	// Bloc des balises [u]-[/u]
	$texte = preg_replace('#\[u](.+?)\[/u]#si','<span style="text-decoration:underline;">$1</span>',$texte);
	
	// Bloc des balises [i]-[/i]
	$texte = preg_replace('#\[i](.+?)\[/i]#si','<em>$1</em>',$texte);
	
	// Bloc des balises [strike]-[/strike]
	$texte = preg_replace('#\[strike](.+?)\[/strike]#si','<span style="text-decoration:line-through;">$1</span>',$texte); 
	
	// Bloc des balises [overline]-[/overline]
	$texte = preg_replace('#\[overline](.+?)\[/overline]#si','<span style="text-decoration:overline;">$1</span>',$texte); 
	
	// Bloc des balises [quote]-[/quote]
	$texte = preg_replace('#\[quote=me](.+?)\[/quote]#si','<br /><strong>J\'ai écrit</strong> :<br/><div class="quote">$1 </div><br />',$texte); 
	$texte = preg_replace('#\[quote=(.+?)](.+?)\[/quote]#si','<br /><strong>$1 a écrit</strong> :<br/><div class="quote">$2 </div><br />',$texte); 
	$texte = preg_replace('#\[quote](.+?)\[/quote]#si','<br /><strong>Citation</strong> :<br/><div class="quote">$1 </div><br />',$texte); 
	
	// Bloc des balises [img]-[/img]
	$texte = preg_replace('#\[img=(.+?)](.+?)\[/img]#si','<a href="$1"><div class="img01"><img class="imageforum" src="$1" alt="$2"/></div></a>',$texte);
	$texte = preg_replace('#\[img](.+?)\[/img]#si','<a href="$1"><div class="img01"><img class="imageforum" src="$1" /></div></a>',$texte);
	
	// Bloc des balises [mail]-[/mail]
	$texte = preg_replace('#\[mail=([mailto:].+?)](.+?)\[/mail]#si','<a href="$1">$2</a>',$texte); 
	$texte = preg_replace('#\[mail=(.+?)](.+?)\[/mail]#si','<a href="mailto:$1">$2</a>',$texte); 
	$texte = preg_replace('#\[mail]([mailto:].+?)\[/mail]#si','<a href="$1">$1</a>',$texte); 
	$texte = preg_replace('#\[mail](.+?)\[/mail]#si','<a href="mailto:$1">$1</a>',$texte); 
	
	// Bloc des balises [align]-[/align]
	$texte = preg_replace('#\[align=(left|center|right)](.+?)\[/align]#si','<div style="text-align:$1; width:100%;">$2</div>',$texte); 
	
	// Bloc des balises [color]-[/color]
	$texte = preg_replace('#\[color=(.+?)](.+?)\[/color]#si','<span style="color:$1;">$2</span>',$texte); 
	
	// Bloc des balises [size]-[/size]
	$texte = preg_replace('#\[size=([0-9]{1,2})](.+?)\[/size]#si','<span style="font-size:$1px;">$2</span>',$texte); 
	
	// Bloc des balises [thick]-[/thick]
	$texte = preg_replace('#\[thick=([0-9]{1,3})](.+?)\[/thick]#si','<span style="font-weight:$1px;">$2</span>',$texte); 
	
	// Bloc des balises [style]-[/style]
	$texte = preg_replace('#\[style=(normal|italique|oblique)](.+?)\[/style]#si','<span style="font-style:$1;">$2</span>',$texte); 
	
	// Bloc des balises [weight]-[/weight]
	$texte = preg_replace('#\[weight=(lighter|bold|bolder)](.+?)\[/weight]#si','<span style="font-weight:$1;">$2</span>',$texte); 
	
	// Bloc des balises [decoration]-[/decoration]
	$texte = preg_replace('#\[decoration=(underline|line-through|overline|blink)](.+?)\[/decoration]#si','<span style="font-weight:$1;">$2</span>',$texte); 
	
	// Bloc des balises [font]-[/font]
	$texte = preg_replace('#\[font=(.+?)](.+?)\[/font]#si','<span style="font-family:$1;">$2</span>',$texte);

	// Bloc des balises [list]-[/list]
	$texte = preg_replace('`\[list=(circle|disc|square|i)](.+?)\[/list]`si','<ul type="$1">$2</ul>',$texte);
	$texte = preg_replace('`\[list](.+?)\|/list]`si','<ul>$1</ul>',$texte);
	
	// Bloc des balises [*]
	$texte = preg_replace('`\[\*=(circle|disc|square|i)](.+?)`si','<li type="$1">$2',$texte);
	$texte = preg_replace('`\[\*](.+?)`si','<li>$1',$texte);

	//Bloc des balises [spoil]-[/spoil]
	$texte = preg_replace('`\[spoil\](.+)\[/spoil\]`isU', '<span class="spoilertexte">Texte caché : cliquez sur le cadre pour l\'afficher</span><div class="spoiler" onclick="switch_spoiler(this)"><div style="visibility: hidden;" class="spoiler3">$1</div></div>', $texte); 
?>



Je précise, pour la dernière fonction, la fonction Spoiler, ainsi que pour la fonction Quote vous devez rajouter ce code dans votre fichier CSS :
Code : CSS
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*N'oubliez pas d'adapter ce bout de code à votre design ^^*/
.spoiler
{
padding:5px;
border:2px solid #808080;
background-color: white;
margin: 5px 5px;
max-height:400px;
overflow: auto;
color: black;
}
.spoilertexte
{
font-weight:bold; font-size:10px;
}


.quote
{
padding:5px; 
border:1px solid #653533; 
margin: 5px 5px; 
overflow: auto;
}


Pour la fonction Spoiler toujours, il va falloir rajouter un bout de code dans le Header (entre les balises <head></head> donc), pour éviter que le même code se repète 50 fois sur la même page.
Code : HTML
1
<script type="text/javascript" src="hide.js"></script>


Mais bon, si vous connaissez un peu le Javascript, vous savez que ce n'est pas suffisant :D
Donc il va falloir créer un fichier que l'on nommera "hide.js" et qu'il faudra placer dans le même dossiers que la page.
Vous pouvez bien sur changer le nom ou le chemin, mais alors n'oubliez pas de modifier le lien
Et dans ce fameux fichier "hide.js", on va mettre ceci :
Code : JavaScript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
function MM_openBrWindow(theURL,winName,features)
	{ 
	window.open(theURL,winName,features);
	{
function decision(message, url)
	{
	if(confirm(message)) location.href = url;
	}
function switch_spoiler(div2)
	{
	var divs = div2.getElementsByTagName('div');
	var div3 = divs[0];
		if (div3.style.visibility == 'visible')
			div3.style.visibility = 'hidden';
		else
			div3.style.visibility = 'visible';
		return true;
	}

Attention, je vois souvent des erreurs avec les fichiers indépendants comme celui-ci, la plupart du temps ce sont des erreurs d'inattention avec des chemins de fichiers incorrects. Si vous avez un problème avec ce code vérifiez que votre chemin est correct.
D'autre part, je pense utile de préciser que le code doit être présent sur toutes les pages ou le BBcode apparait.
N'oubliez donc pas de bien modifier tous vos <head></head>.



Pour l'utilisation, bah vous le savez surement aussi bien que moi, donc je n'y passerai pas la journée.

On part du principe que le message est déjà encodé dans la base de donnée, on le mets donc dans une variable.
Ensuite le plus simple est de créer un fonction avec le BBcode donné plus haut.
Code : PHP
1
2
3
4
5
6
7
8
9
<?php
function code($texte)
{

/*ICI IL FAUT PLACER LE BBCODE DONNé PLUS HAUT*/

return $texte;//On retourne la variable texte
}
?>


Et puis pour afficher le tout, il ne suffit plus que d'un simple echo :
Code : PHP
1
2
3
<?
echo code($variable_avec_le_message) ;
?>



Ce qui se passe avec ce script, c'est qu'il va envoyer le message dans la fonction code() qui va transformer tout le BBCode qu'elle voit en code HTML compréhensible par le navigateur. On ne peut plus simple quoi ^^


Voilà, maintenant j'espère que ce topic sera vu (et apprécié) par des gens qu'il pourrait aider.
Ayant moi même été dans la même situation, je sais qu'il est très agréable d'avoir un BBcode "tout prêt" ;)
Édité le 16/03/2010 à 17:02:28 par Xavier5293
 
Publicité # Posté le 14/03/2010 à 16:05:03

Hors ligne Jeremy-f # Posté le 14/03/2010 à 16:12:03
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Wha, super BBcode :) Merci beaucoup. Il ne manque que la coloration syntaxique comme fait sur le SDZ.
(Si quelqu'un l'a faites moi signe).

Merci beaucoup :)
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 16:17:28
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Hors ligne Nami Doc # Posté le 14/03/2010 à 16:42:14
Lamaer taler dansk

donc ça crée la fonction show/hide pour chaque [hide] :° ?

La flemme conquerra le monde !
Secret (cliquez pour afficher)
Image utilisateur
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 16:43:36
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Si par [hide] tu veux dire la fonction [spoil] alors oui.
 
Hors ligne Nami Doc # Posté le 14/03/2010 à 16:45:42
Lamaer taler dansk

ça me parait un petit peu horrible :o

La flemme conquerra le monde !
Secret (cliquez pour afficher)
Image utilisateur
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 17:39:20
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Hors ligne Jeremy-f # Posté le 14/03/2010 à 18:47:53
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Citation : Xavier5293
Pourquoi ça ?


Car c'est idiot de déclarer 50x la même choses.
C'est comme faire
Code : PHP
1
<?php $salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";$salut = "salut";


Il faudrais mieux mettre la fonction JS dans le head, une bonne fois pour toute. :)
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 19:00:24
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Oui, ça je le sait bien, mais alors il faut modifier toutes les pages ou le texte apparait.
Maintenant moi je veux bien le faire, mais ça serait , je pense, plus gênant qu'autre chose, tandis que là même si ça se répète ça ne pose pas de problème.

Vous voulez que je modifie ?
 
Hors ligne Jeremy-f # Posté le 14/03/2010 à 19:15:57
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Ben par exemple mes pages sont constitué ainci :

Code : PHP
1
2
3
4
5
6
<?php 
include("include/header.php"); 
  // -----------------
      // Ma page
  // -----------------
include("include/footer.php");

Donc en développant ainsi on change toute ses pages en 10min.
Sinon on es pas obligé de le mettre dans le head, ça passe quand même si tu le met au milieu de ton fichier, mais en le répétant pleins de fois ça ne sert pas trop. ^^
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 19:21:57
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Oui, mais mon site est tellement mal conçu (oui, je reconnais :D ) que j'ai un header différent pour presque chaque page, mais bon ta solution est mieux, je vais modifier.
 
Hors ligne Jeremy-f # Posté le 14/03/2010 à 19:26:54
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Disons que l'avantage là c'est que tu as bien moins de choses à faire ^^.
Mais il y à une autre solution : regarde par ici.
Perso je préfère la mienne :lol:
 
Hors ligne Xavier5293 # Posté le 14/03/2010 à 19:30:08
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Oui moi aussi ^^


EDIT: C'est modifié.
Édité le 14/03/2010 à 19:41:07 par Xavier5293
 
Hors ligne Nami Doc # Posté le 15/03/2010 à 17:44:08
Lamaer taler dansk

t'as oublié de virer les slashs du fichier JS ^^

La flemme conquerra le monde !
Secret (cliquez pour afficher)
Image utilisateur
 
Hors ligne Amatewasu # Posté le 15/03/2010 à 18:05:29
Avatar

Ville : Retiers
Pays : France métropolitaine

Merci ;)

Bon si je n'avais pas vu ce topic je l'aurais fait mais sa m'economise fu temps ^^

En plus la fonction spoiler, c'est cool.

Aller hop' en favoris pour qu'en j'en aurais besoin.

Merci
 
Hors ligne Jeremy-f # Posté le 15/03/2010 à 18:07:39
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Citation : Kurenaï
Merci ;)
Bon si je n'avais pas vu ce topic je l'aurais fait mais sa m'economise fu temps ^^
En plus la fonction spoiler, c'est cool.
Aller hop' en favoris pour qu'en j'en aurais besoin.
Merci


Pas besoin du favoris vus que tu as posté, tu le retrouvera facilement à droite :lol:
 
Hors ligne Amatewasu # Posté le 15/03/2010 à 18:27:56
Avatar

Ville : Retiers
Pays : France métropolitaine

Oui mais il y a une forte chance qu'il n'y ait plus de nouveau post.

Hors j'en aurais besoin dans longtemps et donc, je regarde les favoris et hop'
 
Hors ligne fishhareng # Posté le 15/03/2010 à 19:06:20
laser !
Avatar

Super!
Merci!!! :)
De plus, je vous passe le code pour les smileys...
Code : PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
$message = str_replace(':)', '<img src="smiley/s1.png"/>', $message);
$message = str_replace(':D', '<img src="smiley/s2.png"/>', $message);
$message = str_replace(';)', '<img src="smiley/s3.png"/>', $message);
$message = str_replace(':p', '<img src="smiley/s4.png"/>', $message);
$message = str_replace(':lol:', '<img src="smiley/s5.gif"/>', $message);
$message = str_replace(':heu:', '<img src="smiley/s6.gif"/>', $message);
$message = str_replace(':(', '<img src="smiley/s7.png"/>', $message);
$message = str_replace(':o', '<img src="smiley/s8.png"/>', $message);
$message = str_replace(':colere:', '<img src="smiley/s9.png"/>', $message);
$message = str_replace('o_0', '<img src="smiley/s10.gif"/>', $message);
$message = str_replace('^^', '<img src="smiley/s11.png"/>', $message);
$message = str_replace(':-°', '<img src="smiley/s12.png"/>', $message);


Les smiley sont ceux de sdz, que voici : :) :D ;) :p :lol: :euh: :( :o :colere2: o_O ^^ :-°
Édité le 16/03/2010 à 08:27:56 par fishhareng
 
Hors ligne Xavier5293 # Posté le 16/03/2010 à 17:04:48
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Ah oui les slashs, je les ai oubliés :lol:

Enfin, c'est corrigé maintenant.
 
Hors ligne Jeremy-f # Posté le 16/03/2010 à 18:18:35
Pisseur de code
Avatar
Flux RSS

Ville : Biot
Pays : France métropolitaine

Citation : fishhareng

De plus, je vous passe le code pour les smileys...
Les smiley sont ceux de sdz, que voici : :) :D ;) :p :lol: :euh: :( :o :colere2: o_O ^^ :-°


Rajoute les balises php :) :D
Secret (cliquez pour afficher)
Code : Zcode
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<code type="php">
<?php
$message = str_replace(':)', '<img src="smiley/s1.png"/>', $message);
$message = str_replace(':D', '<img src="smiley/s2.png"/>', $message);
$message = str_replace(';)', '<img src="smiley/s3.png"/>', $message);
$message = str_replace(':p', '<img src="smiley/s4.png"/>', $message);
$message = str_replace(':lol:', '<img src="smiley/s5.gif"/>', $message);
$message = str_replace(':heu:', '<img src="smiley/s6.gif"/>', $message);
$message = str_replace(':(', '<img src="smiley/s7.png"/>', $message);
$message = str_replace(':o', '<img src="smiley/s8.png"/>', $message);
$message = str_replace(':colere:', '<img src="smiley/s9.png"/>', $message);
$message = str_replace('o_0', '<img src="smiley/s10.gif"/>', $message);
$message = str_replace('^^', '<img src="smiley/s11.png"/>', $message);
$message = str_replace(':-°', '<img src="smiley/s12.png"/>', $message);
</code>


Ca le ferat plus :) :D Et merci à toi =)
 
Hors ligne fishhareng # Posté le 16/03/2010 à 18:57:21
laser !
Avatar

De rien, mais pour les balises, je pense que vous avez compris... :p
Édité le 16/03/2010 à 18:57:46 par fishhareng
 
Hors ligne inuyasha # Posté le 16/03/2010 à 19:27:03

str_replace ça ne peut pas prendre des array en paramètres ?
Hors ligne Caduchon # Posté le 16/03/2010 à 19:31:59
Cicéron c'est Pointcarré
Avatar
Validateurs

Ville : Louvain-la-neuve
Pays : Belgique

Pour la coloration syntaxique dans divers langages:
http://qbnz.com/highlighter/

(le site semble un peu foireux, mais tout était normal la dernière fois que je suis allé ^^)
 
Hors ligne fishhareng # Posté le 17/03/2010 à 13:15:58
laser !
Avatar

Bah di donc, ils connaissent pas css! ;p
 
Hors ligne Xavier5293 # Posté le 17/03/2010 à 20:02:31
Avatar

Ville : Forchies-la-marche
Pays : Belgique

Je suis content que ça plaise ^^
 
Hors ligne Mimos@ # Posté le 17/03/2010 à 20:28:56
Avatar

Vu comme le site de GeSHi s'affiche actuellement, vous pouvez aussi vous tourner vers FSHL
Édité le 17/03/2010 à 20:31:35 par Mimos@

Processeur: Intel Core I5 750; Carte Mère: Asus P7P55D Pro;
RAM: GSkill RH RipJaws 2x2Go DDR3 PC3-12800 Cas7;
DD Sys: Crucial M4 128Go; DD Data: SAMSUNG 500Go SpinPoint F3;
Carte Graphique: Sapphire HD4890 Vapor-X 1Go;
Boitier: LANCOOL DragonLord K58; Alimentation: Corsair HX520.
 
Hors ligne Victor01 # Posté le 17/03/2010 à 21:00:42

Haha mais quel bordel ce site de GeSHI. Y'a aussi SyntaxHighLighter =D

Besoin d'icônes ?: IconFinder
 
Hors ligne bourdais6 # Posté le 18/03/2010 à 19:34:58
Avatar

Ville : Ruaudin
Pays : France métropolitaine

Super,merci!
Hors ligne Benamour Jr # Posté le 19/03/2010 à 16:44:16
Beinhou !!
Avatar

Ville : Ixelles
Pays : Belgique

Juste un petit message pour remercier l'auteur de proposer ce BBCode qui va m'épargner de nombreuses heures de boulot ^^

MERCI !!!!!!!!
Hors ligne Caduchon # Posté le 19/03/2010 à 22:39:08
Cicéron c'est Pointcarré
Avatar
Validateurs

Ville : Louvain-la-neuve
Pays : Belgique

J'en profite pour ajouter un bbcode que j'utilise actuellement. Il y a quelques inventions en plus qui peuvent vous intéresser.
Le "multicols" doit peut-être être adapté à votre css pour bien fonctionner...

Code : PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
	$str = htmlspecialchars($str);
	$str = str_replace("\n",'<br/>',$str);
	$str = preg_replace('#\[b\](.*)\[/b\]#isU','<strong>$1</strong>',$str);
	$str = preg_replace('#\[i\](.*)\[/i\]#isU','<em>$1</em>',$str);
	$str = preg_replace('#\[u\](.*)\[/u\]#isU','<u>$1</u>',$str);
	while(preg_match('#\[big\](.*)\[/big\]#isU',$str))
		$str = preg_replace('#\[big\](.*)\[/big\]#isU','<span style="font-size:1.25em;">$1</span>',$str);
	while(preg_match('#\[small\](.*)\[/small\]#isU',$str))
		$str = preg_replace('#\[small\](.*)\[/small\]#isU','<span style="font-size:0.8em;">$1</span>',$str);
	while(preg_match('#\[color=(\#[0-9A-F]{6})\](.*)\[/color\]#isU',$str))
		$str = preg_replace('#\[color=(\#[0-9A-F]{6})\](.*)\[/color\]#isU','<span style="color:$1;">$2</span>',$str);
	$str = preg_replace('#\[center\](.*)\[/center\]#isU','<span style="display:block;text-align:center;">$1</span>',$str);
	$str = preg_replace('#\[url=([0-9a-zA-Z\._/\-\?&%]*)\](.*)\[/url\]#iU','<a href="$1">$2</a>',$str);
	$str = preg_replace('#\[img\](.*)\[/img\]#iU','<img src="$1" alt="" title="" />',$str);
	$str = preg_replace('#\[img width=([1-9][0-9]{0,3})(px|%)\](.*)\[/img\]#iU','<img src="$3" style="width:$1$2;" />',$str);
	while(preg_match('#\[multicols\](((<br/>)?\[col\](.*)\[/col\])*)\[/multicols\]#isU',$str))
		$str = preg_replace('#\[multicols\](((<br/>)?\[col\](.*)\[/col\])*)\[/multicols\]#isU','<span style="display:block;"><table style="width:100%;"><tr>$1</tr></table></span>',$str);
	while(preg_match('#\[col\](.*)\[/col\](<br/>)?\[col\](.*)\[/col\](<br/>)?\[col\](.*)\[/col\]#isU',$str))
		$str = preg_replace('#\[col\](.*)\[/col\](<br/>)?\[col\](.*)\[/col\](<br/>)?\[col\](.*)\[/col\](<br/>)*#isU','[col]$1[/col]<td style="text-align:justify;margin-left:10px;margin-right:10px;">$3</td>[col]$5[/col]',$str);
	while(preg_match('#(<br/>)?\[col\](.*)\[/col\](<br/>)?#isU',$str))
		$str = preg_replace('#(<br/>)?\[col\](.*)\[/col\](<br/>)?#isU','<td style="text-align:justify;">$2</td>',$str);
	return $str;
?>
 

Retour au forum "PHP" ou à la liste des forums

Pour accéder à cette section
Connectez-vous !
connexion_rpx