Grosse question d'un débutant =P

sidikire Messages postés 13 Date d'inscription samedi 13 novembre 2004 Statut Membre Dernière intervention 29 juin 2005 - 26 juin 2005 à 19:36
sidikire Messages postés 13 Date d'inscription samedi 13 novembre 2004 Statut Membre Dernière intervention 29 juin 2005 - 29 juin 2005 à 05:24
Salut!

je voudrait faire un petit "créateur d'article", tout va bien jusqu'ici, mais j'aimerais avoir des fonctions, car moi ce que j'ai c'est seulement un petit "Textbox"... Pas très sympa, il ne peuvent pas mettre l'écriture en gras,italique,mettre des smiley,etc.. J'aimerais savoir comment faire ça!
Du genre à celle de phpcs là, qu'on peut souligner des mots et qu'on peut le mettre en gras,souligné,etc.. S'il existerais un petit script pour que je comprene ou que quelqu'un pourrais me donner un exemple.. ça serait très apprécié =)! Car je ne sait pas comment faire ça du tout..., alors il a quelqu'un qui peut me guider??
Merci d'avance

Sidikire

7 réponses

cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
26 juin 2005 à 22:22
$Value = un champ de texte;
$Value = htmlentities($Value);
$Value = str_replace('[b]','',$Value);
... pareil avec plein de balises HTML

C'est le principe du BBCode.

Dans quelques temps, je déposerai un code qui répondra à tes attentes (mais c'est une coïncidence !)

===========
Validez les réponses si ok...

ViewVite : HTML
0
sidikire Messages postés 13 Date d'inscription samedi 13 novembre 2004 Statut Membre Dernière intervention 29 juin 2005
26 juin 2005 à 23:14
hum.. d'acc! Tu me f'ras signe alors

Sidikire
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
27 juin 2005 à 13:55
Plus çà va et plus j'ai d'idées... alors je préfère en attendant te donner une exclusivité :

<?php
$CrLf = chr(13).chr(10);
$CrLf_linux = chr(10);


$HtmlTable_from = array (' ', ' ', ' ', ' ', ' ', ' ', '
', '
', '
', '
', '[small]', '/small', '[blue]', '/blue', '[red]', '/red', '[green]', '/green', '[purple]', '/purple', '[navy]', '/navy', '[black]', '/black');
$HtmlTable_dest = array ('', '', '', '', '', '', '
', '
', '', '
', '<small>', '</small>', '', '', '', '', '', '', '', '', '', '', '', '');


function CrLfToBR($Text) {
global $CrLf, $CrLf_linux;
$Text = str_replace($CrLf,'
',$Text);
$Text = str_replace($CrLf_linux,'
',$Text);
return $Text;
}


function HtmlReplacement($Value) {
global $HtmlTable_from, $HtmlTable_dest;
$Idx = 0;
foreach($HtmlTable_from as $s) {
$Value = str_replace($s,$HtmlTable_dest[$Idx],$Value);
$Idx++;
}
return $Value;
}


function Linking($Value) {
//INITIALISATION
$Opn = 0;
$Cls = 1;
$KeyO = '[link]';
$KeyC = '/link';
//TRAITEMENT
while ($Cls>$Opn) {
$Opn = strpos($Value,$KeyO);
$Cls = strpos($Value,$KeyC);
if ($Cls>$Opn) {
$Link = substr($Value,$Opn+strlen($KeyO),$Cls-$Opn-strlen($KeyO));
$Value = str_replace($KeyO.$Link.$KeyC,'['.$Link.' '.$Link.']',$Value);
//NDLR: cette fonction ne requiert pas de HTLMENTITIES étant donné que ce filtre a déjà été appliqué par la fonction DISPLAY
}
}
return $Value;
}


function Display($Value) {
$Value = htmlentities($Value); //NDLR: c'est FONDAMENTAL !!!!!!
$Value = CrLfToBR($Value);
$Value = SmileyReplacement($Value);
$Value = Linking($Value);
$Value = HtmlReplacement($Value);
return $Value;
}
?>

Pour appliquer les styles, tu utilises la fonction Display($Value);

Le comble c'est qu'il y a transformation des URL via [link] et /link.

Je te redirai tout ça si ceci ne marche pas...

===========
Validez les réponses si ok...

ViewVite : HTML
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
27 juin 2005 à 14:00
Hello,



ca ne va pas etre tres tres aux normes ca... ;-)

Anfin, pas xhtml en tous cas.

Pourquoi ne pas utiliser des span plutot ?

Ca a plein d'avantage : c aux normes, tu peux utiliser des styles, et
tu peux imbriquer autant de span que tu veux, et les fermer dans
n'importe quel ordre, ca restera valide :-)

Le seul truc a verifier, c'est d'avoir autant de span ouverts que de span fermes, c'est tout.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
27 juin 2005 à 21:59
L'astuce c'est de pouvoir faire du formattage HTML en se dispensant des intéractions HTML que l'utilisateur pourrait faire.
htmlentities + Display => sécurité + html

===========
ViewVite : HTML
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
28 juin 2005 à 09:18
Oui merci je connais le principe du bbcode lol...ce que je te dis, c'est que :
[red]/red = >
c'est horrible...
Et puis si on oublie le /red...
Verifier la fermeture de balises n'est pas tres complique...sauf quand on a des tas de balises differentes. Parcequ'alors vient le probleme de l'imbrication :
[red] /red...c'est nettement plus complique a regler, ca.

Alors que :
=>
[red]/red =>

Ca simplifie largement la vie...et c'est toujours XHTML compliant.
Si l'utilisateur fait :
[red]/red
Toi ca devient :

Ce qui est faux. Au passage, il vaut mieux utiliser que , mais bon.
Et moi ca devient :

Ce qui dans tous les cas est juste.
0
sidikire Messages postés 13 Date d'inscription samedi 13 novembre 2004 Statut Membre Dernière intervention 29 juin 2005
29 juin 2005 à 05:24
hum.. moi je suis bien heureux de ce qu'il ma donné, je vais bien essayer ^^!!! Merci là, je vais faire un p'tit test bientot =D!!

Sidikire
0
Rejoignez-nous