Smiley dans un texte de saisie récupéré

Résolu
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005 - 23 févr. 2005 à 20:07
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005 - 24 févr. 2005 à 19:38
Bonjour voila mon petit pb en faite je sais pas trop comment m'y prendre j'espere que vous me direz par ou commencer
j'explique le probleme j'ai creer une shoutbox en flash j'envoie la saisie sur MySQL grace a un fichier PHP et je récupere TOUT grace a un autre fichier PHP qui va cehrcher les element de la table et qui les affiche sous flash

ma question est comment integrer des smiley par exemple si l'internaute ecrit : "Salut tout le monde :p" a la place du ":p" je voudrai que sa soit un smiley donc en faite au moment ou je récupere toutes mes donné de ma table dans une variable PHP y faudrai analyser tout le texte et quand ya un ":p" metre un smiley..
J'espere que j'ai été assez clair et que vous pouvez m'aider
PS : pour ce qui ne savent pas ce qu'est une shoutbox allez voir ma création : http://lordroom.free.fr/ShoutBox.html laisser des com en passant ;)

Merci d'avance

By L0rD

15 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
23 févr. 2005 à 21:25
Salut,



tournes-toi vers la fonction str_replace. Tu prends en entrée le code
du smiley et en sortie un code html correspondant à l'image du smiley :




a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
3
cs_myrion Messages postés 21 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 7 décembre 2005
23 févr. 2005 à 21:39
Moi je fais:

$trans array("[:P]"> "", ...);

$text = strtr($text,$trans);
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
23 févr. 2005 à 21:59
merci j'allais justement venir poster j'aurai peut etre du chercher un peu plus je vien de trouver en effet la fonction str_replace me convien a MERVEILLE

$news = str_replace(":p","",$news);

merci a vous

By L0rD
0
cs_myrion Messages postés 21 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 7 décembre 2005
23 févr. 2005 à 22:07
si tu as beaucoup de smiley, je te conseille ma variante qui te permet
de tout faire en un. Sinon, c'est vrai que str_replace va très bien!



J'suis allé sur ta page, mais je n'ai tjs pas compris ce qu'est une shoutbox
0

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

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
23 févr. 2005 à 22:15
str_replace accepte les tableaux passés en paramètres



ensuite remplace ça : $news = str_replace(":p","",$news); par ça :




$news = str_replace(':p','',$news);



<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
cs_myrion Messages postés 21 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 7 décembre 2005
23 févr. 2005 à 22:46
ok, merci pour l'info Anthomicro!
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
24 févr. 2005 à 14:55
Merci pour toute vos réponse mais j'ai encore un petit souci
voter code marche mais le probleme c'est qu'il ne prend en compte QU'UN SEUL smiley je m'explique
si le t'exte est : "coucou tout le monde :p comment sa va ? :p" y va transformer qu'un seul ":p" en smiley et l'autre ne va pas etre afficher (ni en smiley ni en texte) il va disparaitre quoi

pourquoi sa fait sa vous avez une idée ?? merci

By L0rD
0
cs_myrion Messages postés 21 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 7 décembre 2005
24 févr. 2005 à 15:03
Je viens d'essayer ça:

<?php

$trans array(":p"> "[LOL]");

$texte = "coucou tout le monde :p comment sa va ? :p";

$texte = strtr($texte,$trans);

echo $texte;

?>



Résultat:

coucou tout le monde [LOL] comment sa va ? [LOL]
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
24 févr. 2005 à 15:50
<?php$trans array(":p"> "[LOL]");
$texte = "coucou tout le monde :p comment sa va ? :p";
$texte = strtr($texte,$trans);
echo $texte;
?>

sa fonctionne mais si tu met sa :

<?php$trans array(":p"> "");
$texte = "coucou tout le monde :p comment sa va ? :p";
$texte = strtr($texte,$trans);
echo $texte;
?>

sa fonctionne pas

By L0rD
0
cs_myrion Messages postés 21 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 7 décembre 2005
24 févr. 2005 à 16:00
Aucun problème sur mon serveur! J'ai les deux smiles en faisant copy/paste de ton code! Ton problème doit être ailleurs...
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
24 févr. 2005 à 17:12
C'est peut etre du parce que c FLASH qui reçoit le texte c'est pas PHP
en faite moi c une variable texte dynamique sous flash qui reçoit le code c pas une variable PHP mais bon merci en tout cas de votre aide je vais éssayer de cherche le probleme vous m'avez beaucoup avancé merci a tous

By L0rD
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
24 févr. 2005 à 17:22
En incluant un fichier PHP avec la fonction $trans si je transforme ":p" en "lol" sa marche mais si je transforme ":p" en "" mon texte dynamique flash m'inscrit :

Parse error: parse error, unexpected T_STRING, expecting ')' in /var/www/free.fr/e/6/lordroom/shoutbox_smileys.php on line 2

Je ne sais pas d'ou sa vien

By L0rD
0
cs_K3nnY Messages postés 16 Date d'inscription dimanche 18 avril 2004 Statut Membre Dernière intervention 11 janvier 2006
24 févr. 2005 à 18:04
peut etre les guillemets , essaie avec des ' au lieu des "
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 févr. 2005 à 18:15
Enlève toutes tes doubles quotes d'ouverture et de fin :



''


<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
L0rD59 Messages postés 19 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 5 mars 2005
24 févr. 2005 à 19:38
<?php$trans array('::content::'> ''">http://lordroom.free.fr/smileys/content/content.jpg">');
$news = strtr($news,$trans);
?>

sa ne fonctionne tjr pas aucune image n'est afficher
je suis désolé de vous saouler les mecs :S
By L0rD
0
Rejoignez-nous