Système de smiley sur sa shoutbox

WhiiTe'

Administateur
Ancien staff
Inscription
22 Octobre 2011
Messages
14 750
Réactions
8 557
Points
32 595
RGCoins
1 826
Salut :RG:,

Aujourd'hui je vais faire la deuxième partie de mon tutoriel, qui consiste à créer sa propre shoutbox. (partie 1)

Avant de commencer le tutoriel ne sera pas ultra-long et expliqué très précisément comme mon premier tutoriel.

Pour faire ce tutoriel vous devrez avoir suivi la première partie qui explique comment créer la shoutbox, avec l'affichage des messages.

Je remercie @Faragnight pour sa précieuse aide. :hug:
Je remercie aussi @HaX GamiG pour son aide. :hug:
J'utilise le logiciel Sublime Text 3.

Donc, voici ce que nous avons (si vous avez suivie la première partie) :

You must be registered for see images attach


Nous allons faire une fonction pour que si on met :mdrlol: le smiley qui correspond s'affiche. :oui:

Mais avant, il nous faut les smileys, je vous ai fait un petit dossier avec quelques smileys de :RG:, vous pouvez bien évidemment changer les smileys. ;)
Le dossier ce situe normalement en bas de ce tutoriel, il est en .rar, vous devrez l'extraire et le mettre dans un dossier nommé img. (important qu'il s'appelle img, finissez le tutoriel avant de changer)​

Donc nous allons créer la fonction, donc :
A écrire au dessus de la condition pour insérer le message et le pseudo.
PHP:
function formatSmiley($smiley){

}

Bien évidemment nous ouvrons pas les balises PHP car nous sommes déjà dans les balises PHP. :ok:

Nous allons ensuite faire la recherche, c'est à dire que nous allons déclarer la valeur à son smiley. :smile:

PHP:
  $search  = array(':dance:', ':D',':bave:',':$', ':bye:', ':coeur:', ':crazy:', ':devil:', ':DJ:', ':dodo:', ':nrv:', ':espion:', 'o_O', ':@', ':fight:', ':hug:', ':p', ':love:', ':mmh:', ':modo:', ':neo:', ':non:', ':oui:', ':mechant:', ':puke:', ':punch:', ':rofl:', ':bad:', ':tchuss:', ':\'(', ':nice:', ':troll:');

    $replace = array('<img src="img/smileys/dance.gif" />', '<img src="img/smileys/awesone.png" />', '<img src="img/smileys/bave.gif" />', '<img src="img/smileys/blush.gif" />', '<img src="img/smileys/bye.gif" />', '<img src="img/smileys/coeur.gif" />', '<img src="img/smileys/crazy.gif" />', '<img src="img/smileys/devil.gif" />', '<img src="img/smileys/DJ.gif" />', '<img src="img/smileys/dodo.gif" />', '<img src="img/smileys/enerve.gif" />', '<img src="img/smileys/espion.gif" />', '<img src="img/smileys/etonne.gif" />', '<img src="img/smileys/facher.gif" />', '<img src="img/smileys/fight.gif" />', '<img src="img/smileys/hug.gif" />', '<img src="img/smileys/joueur.gif" />', '<img src="img/smileys/love.gif" />', '<img src="img/smileys/mmh.gif" />', '<img src="img/smileys/modo.gif" />', '<img src="img/smileys/neo.gif" />', '<img src="img/smileys/non.gif" />', '<img src="img/smileys/oui.gif" />', '<img src="img/smileys/pelo.gif" />', '<img src="img/smileys/puke.gif" />', '<img src="img/smileys/punch.gif" />', '<img src="img/smileys/rofl.gif" />', '<img src="img/smileys/bad.gif" />', '<img src="img/smileys/tchuss.gif" />', '<img src="img/smileys/triste.gif" />', '<img src="img/smileys/nice.gif" />', '<img src="img/smileys/troll.png" />');

Explication : On recherche la valeur du smiley quand un message vas s'insérer (on verra plus tard), si on la pas, il n'y aura pas de smiley mais juste le texte qui a été rentré par l'utilisateur, puis si on a la valeur dance (entre deux ":") alors on remplace la valeur par la première image de la variable $replace, les valeurs doivent être dans le même ordre que les chemins d'accès pour les smileys, si nous avons rofl en quatrième, le chemin d'accès pour le gif rofl devra être quatrième dans le $replace.

Nous allons ensuite écrire deux dernière lignes pour que la fonction soit complète. :dance:

Ne me demandez pas ce que signifie ces deux phrases, je ne serai pas vous répondre, en gros la variables $smiley fait un str_replace des trois variables.

PHP:
    $smiley = str_replace($search, $replace, $smiley);
    return $smiley;

Normalement si vous mettez dance (entre deux ":") le smiley dance de :RG: s'affichera en texte plein (en gros on verra sa valeur, et non le smiley), ne vous inquiétez pas c'est normal, il va falloir changé deux trois trucs sur le code de la première partie du tutoriel. :)

Nous allons changé l'array et rajouté une petite ligne dans la condition pour insérer le message et le pseudo.​

Je vais c/C mon code directement, à remplacé par l'autre condition. :)
PHP:
if(isset($_POST['submit']) AND isset($_POST['pseudo']) AND isset($_POST['message']) AND !empty($_POST['pseudo']) AND !empty($_POST['message']))
    {
        $pseudo = htmlspecialchars(trim($_POST['pseudo']));

        $message = htmlspecialchars(trim($_POST['message']));
        $msg = formatSmiley($message);
        $insertmessage = $bdd->prepare('INSERT INTO chatbox(pseudo, message) VALUES (?, ?)');
        $insertmessage->execute(array($pseudo, $msg));
    }

Nous mettons à la place de $message dans l'array $msg, qui est la variable de la boucle while qui permet d'affiché le message.
Nous rajoutons aussi une ligne obligatoire.

Et voila c'est la fin de ce topic, vous pouvez également censurer les insultes, je vous laisse réfléchir pour ça. ;)

You must be registered for see images attach

Dîtes moi si ce tutoriel explique bien, ce que vous en pensez, ce que je peux améliorer etc...
Et aussi donnez moi une idée de tutoriel à faire. (utile) :oui:

Aucun c/C n'a été fait au court de ce topic, tout est de moi. :oui:

Si vous avez des questions ou besoin d'aide, n'hésiter pas à m'envoyer un message privé !
:tchuss:
 

Fichiers joints

  • smileys.rar
    smileys.rar
    81.7 KB · Affichages: 63
  • upload_2015-7-27_1-4-18.png
    upload_2015-7-27_1-4-18.png
    35.9 KB · Affichages: 134
GG, la classe :smile:
 
Et le jour ou tu changes l'url des smileys ? :)

Je t'ai donné une solution plus simple (et plus propre) en MP ^^'
 
Et le jour ou tu changes l'url des smileys ? :)

Je t'ai donné une solution plus simple (et plus propre) en MP ^^'

Si tu change l'url des smileys tu change dans le code, et ta solution n'est pas de moi, j'aurai pas eu lé mérite d'avoir fait ça, même si j'ai as vraiment out fait :)
 
Si tu change l'url des smileys tu change dans le code, et ta solution n'est pas de moi, j'aurai pas eu lé mérite d'avoir fait ça, même si j'ai as vraiment out fait :)

Oui, sauf que t'es obligé de le changé à plusieurs endroits, ce qui est sujet à erreur.
Quant à la solution, si je te l'ai donné c'est que tu pouvais t'en servir librement ;)
 
Oui, sauf que t'es obligé de le changé à plusieurs endroits, ce qui est sujet à erreur.
Quant à la solution, si je te l'ai donné c'est que tu pouvais t'en servir librement ;)

Oui je sais, mais je préfère faire à ma manière, même si c'est chiant :)
 
Oui, sauf que t'es obligé de le changé à plusieurs endroits, ce qui est sujet à erreur.
Quant à la solution, si je te l'ai donné c'est que tu pouvais t'en servir librement ;)
Si tu es un peut rusé, tu utilise la commande de touche qui permet de selectionner tout ce qui est pareil dans sublime text et tu replace comme ça. Tu l'écrit qu'une seul fois et si tu te trompe simple a corriger ..
 
Oui je sais, mais je préfère faire à ma manière, même si c'est chiant :)
mdr. Ok ^^'

C'est dommage, surtout pour toi. Tu évolueras plus lentement si tu te compliques la vie.. mais chacun son rythme :)


@➜ LΔGGEЯ | ZxG™ ♥ à vu ce que je savais faire :)
 
mdr. Ok ^^'

C'est dommage, surtout pour toi. Tu évolueras plus lentement si tu te compliques la vie.. mais chacun son rythme :)


@➜ LΔGGEЯ | ZxG™ ♥ à vu ce que je savais faire :)

Lentement mais surement :)

Merci quand même de ton aide, je me compliquerai moins la vie avec le temps ;)
 
mdr. Ok ^^'

C'est dommage, surtout pour toi. Tu évolueras plus lentement si tu te compliques la vie.. mais chacun son rythme :)


@➜ LΔGGEЯ | ZxG™ ♥ à vu ce que je savais faire :)
Ça parait un membre "noob" a première vu, mais je t'assure qu'il pourrait faire un forum comme RG sans même utiliser Xenforo ou autres (d)
 
Ça parait un membre "noob" a première vu, mais je t'assure qu'il pourrait faire un forum comme RG sans même utiliser Xenforo ou autres (d)

Il parait pas noob parce-qu'il est pas premium ou autres hein ^^ Après si tu le vois comme ça ..
 
Tu aurai pas un autre moyen ? (ngrok ?)
Même pas en rêve j'ouvre un accès sur mon PC ^^'

Les sites que j'ai montré à @➜ LΔGGEЯ | ZxG™ ♥ sont des sites que je fais dans le cadre de mon job.. C'est pas juste pour "faire mumuse en php".

J'ai 2 entreprises dans le développement et dans le gestion web accessoirement ;)
 
Retour
Haut