TUTO PHP | Faire des commandes sur sa shoutbox

WhiiTe'

Administateur
Ancien staff
Inscription
22 Octobre 2011
Messages
14 709
Réactions
8 497
Points
32 425
RGCoins
0
Salut :RG:,

Dans ce nouveau tutoriel je vais vous apprendre à faire un système de commande sur sa shoutbox, tout ça en PHP !
Vous devrez déjà avoir une base sur votre site afin de suivre le tutoriel, quand je dise base c'est l'espace membre, et le chat déjà fait, l'espace membre n'est pas obligé mais dans mon tutoriel il le faudra, après à vous d'adapter le code à votre site.
J'ai refait une base de donnée pour le tutoriel, ma table 'users' et 'chat' seront donc quasiment vide, seul le nécessaire y sera.
Le tutoriel est vraiment court.







https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Vous pourrez voir que le système actuel que j'ai fait (screen ci-dessus) est basique, on a un formulaire avec un champ de texte, une partie qui insert le message et une autre qui l'affiche, mon pseudo sera en rouge si je suis administrateur, et noir (par défaut) si je ne le suis pas.

Le but est que, si je fais '/bot message', le pseudo qui sera inséré soit 'BOT' et le message sera ce qui est après '/bot', même système pour vider la shoutbox, si je fais '/prune' la shoutbox se vide .. Rien de bien compliqué.

Voici la partie où j'insère le message, c'est celle qui va nous intéresser étant donné que tous va se passer là !


Nous allons donc mettre la ligne 17 et 18 de côté et mettre à la place le code qui va suivre, on va utiliser la fonction explode, l'exemple qui va suivre est pour le '/bot' !


PHP:
                $bot = explode('/bot', $message);
                if(isset($bot['1']))
                {
                    $robot = $bot['1'];
          $iMessage = $bdd->prepare('INSERT INTO chat(pseudo,message,grade) VALUES(?, ?, ?)');
           $iMessage->execute(array('BOT', $robot, 'robot'));
                }


En gros là on vérifie si on a '/bot' dans le champs, avec un message après, si on l'a alors on fait une requête SQL qui insert le message, avec comme 'pseudo' : BOT et comme 'grade' : robot, le grade du robot c'est pour le mettre en couleur sur la page WEB, rien d'autre.

La variable $robot contient uniquement le message, si j'avais pas mis cette condition et si j'avais mis '$message' dans l'array, le message ce serait bien envoyé entant que BOT mais j'aurais eu un truc comme ça : 'BOT: /bot message' sur la page WEB, alors que je veux juste avoir : 'BOT: message'.

On va rajouter un else, car si je met un message sans '/bot' rien ne s'enverra, donc reprenons la ligne 17 et 18 de toute à l'heure !

PHP:
                else
                {
                    $iMessage = $bdd->prepare('INSERT INTO chat(pseudo,message,grade) VALUES(?, ?, ?)');
                    $iMessage->execute(array($_SESSION['pseudo'], $message, $_SESSION['grade']));
                }


Voilà vous avez fait votre BOT !


https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Je vais vous montrer comment faire le système '/prune' qui permet de vider la shoutbox, c'est le même principe que le '/bot'.
Si vous avez bien suivi le tutoriel vous devriez avoir un code comme ça : !

Au dessus de la ligne 18, on va faire un explode pour voir si on a '/prune'.

PHP:
                $prune = explode('/prune', $message);

Maintenant il faut faire la requête SQL qui va vider entièrement la table chat, en dessous du crochet fermant de la requête du BOT, autrement dit ligne 23 sur le screen ci-dessus, on va vérifié si on a prune.
PHP:
                elseif(isset($prune['1']))
                {
                    $rPrune = $bdd->prepare('TRUNCATE chat');
                    $rPrune->execute(array());
                }


On met rien dans l'array vu qu'on a rien à faire passer, TRUNCATE sert à vider entièrement une table, j'ai rien d'autre à vous dire sur ce code puisqu'il n'y a rien à ajouter.

Vous savez maintenant comment faire des commandes sur votre shoutbox. :D


https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Vous devriez avoir un code semblable à ça à la fin :

Si vous avez un problème ou une question n'hésitez surtout pas à me la poser, dîtes-moi si vous avez une idée de commande à faire ou les commandes que vous avez réussi à faire. :)

Le prochain tutoriel sera sur comment faire pour avoir "posté il y a x temps" sur un message shoutbox ou sur un commentaire de blog .. le code sera pas entièrement fait par moi cette fois-ci ! :(

:tchuss:
 

Fichiers joints

  • séparateur-par-beery.png
    séparateur-par-beery.png
    15.2 KB · Affichages: 599

Kévin 🚀

Administrateur
Administrateur
Inscription
18 Décembre 2012
Messages
4 830
Réactions
5 538
Points
27 882
RGCoins
370
Bon tutoriel, une petite remarque je ne mettrais pas le code au centre de la page mais plus à gauche pour facilité la lecture ;)
 

WhiiTe'

Administateur
Ancien staff
Inscription
22 Octobre 2011
Messages
14 709
Réactions
8 497
Points
32 425
RGCoins
0

Petrouchka

??
Premium
Inscription
16 Février 2015
Messages
2 078
Réactions
727
Points
10 761
RGCoins
0
Salut :RG:,
Dans ce nouveau tutoriel je vais vous apprendre à faire un système de commande sur sa shoutbox, tout ça en PHP !
Vous devrez déjà avoir une base sur votre site afin de suivre le tutoriel, quand je dise base c'est l'espace membre, et le chat déjà fait, l'espace membre n'est pas obligé mais dans mon tutoriel il le faudra, après à vous d'adapter le code à votre site.
J'ai refait une base de donnée pour le tutoriel, ma table 'users' et 'chat' seront donc quasiment vide, seul le nécessaire y sera.
Le tutoriel est vraiment court.







https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Vous pourrez voir que le système actuel que j'ai fait (screen ci-dessus) est basique, on a un formulaire avec un champ de texte, une partie qui insert le message et une autre qui l'affiche, mon pseudo sera en rouge si je suis administrateur, et noir (par défaut) si je ne le suis pas.

Le but est que, si je fais '/bot message', le pseudo qui sera inséré soit 'BOT' et le message sera ce qui est après '/bot', même système pour vider la shoutbox, si je fais '/prune' la shoutbox se vide .. Rien de bien compliqué.

Voici la partie où j'insère le message, c'est celle qui va nous intéresser étant donné que tous va se passer là !


Nous allons donc mettre la ligne 17 et 18 de côté et mettre à la place le code qui va suivre, on va utiliser la fonction explode, l'exemple qui va suivre est pour le '/bot' !


PHP:
                $bot = explode('/bot', $message);
                if(isset($bot['1']))
                {
                    $robot = $bot['1'];
          $iMessage = $bdd->prepare('INSERT INTO chat(pseudo,message,grade) VALUES(?, ?, ?)');
           $iMessage->execute(array('BOT', $robot, 'robot'));
                }

En gros là on vérifie si on a '/bot' dans le champs, avec un message après, si on l'a alors on fait une requête SQL qui insert le message, avec comme 'pseudo' : BOT et comme 'grade' : robot, le grade du robot c'est pour le mettre en couleur sur la page WEB, rien d'autre.

La variable $robot contient uniquement le message, si j'avais pas mis cette condition et si j'avais mis '$message' dans l'array, le message ce serait bien envoyé entant que BOT mais j'aurais eu un truc comme ça : 'BOT: /bot message' sur la page WEB, alors que je veux juste avoir : 'BOT: message'.

On va rajouter un else, car si je met un message sans '/bot' rien ne s'enverra, donc reprenons la ligne 17 et 18 de toute à l'heure !

PHP:
                else
                {
                    $iMessage = $bdd->prepare('INSERT INTO chat(pseudo,message,grade) VALUES(?, ?, ?)');
                    $iMessage->execute(array($_SESSION['pseudo'], $message, $_SESSION['grade']));
                }

Voilà vous avez fait votre BOT !


https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Je vais vous montrer comment faire le système '/prune' qui permet de vider la shoutbox, c'est le même principe que le '/bot'.
Si vous avez bien suivi le tutoriel vous devriez avoir un code comme ça : !

Au dessus de la ligne 18, on va faire un explode pour voir si on a '/prune'.

PHP:
                $prune = explode('/prune', $message);

Maintenant il faut faire la requête SQL qui va vider entièrement la table chat, en dessous du crochet fermant de la requête du BOT, autrement dit ligne 23 sur le screen ci-dessus, on va vérifié si on a prune.
PHP:
                elseif(isset($prune['1']))
                {
                    $rPrune = $bdd->prepare('TRUNCATE chat');
                    $rPrune->execute(array());
                }

On met rien dans l'array vu qu'on a rien à faire passer, TRUNCATE sert à vider entièrement une table, j'ai rien d'autre à vous dire sur ce code puisqu'il n'y a rien à ajouter.

Vous savez maintenant comment faire des commandes sur votre shoutbox. :D


https://reality-gaming.fr/attachments/separateur-par-beery-png.83927/


Vous devriez avoir un code semblable à ça à la fin :

Si vous avez un problème ou une question n'hésitez surtout pas à me la poser, dîtes-moi si vous avez une idée de commande à faire ou les commandes que vous avez réussi à faire. :)

Le prochain tutoriel sera sur comment faire pour avoir "posté il y a x temps" sur un message shoutbox ou sur un commentaire de blog .. le code sera pas entièrement fait par moi cette fois-ci ! :(

:tchuss:

Good job :)
 

JustForGamingCom

Développeur WEB / Fondateur : JustForModding.com
Premium
Inscription
25 Février 2013
Messages
1 854
Réactions
988
Points
10 106
RGCoins
0
Tu aurais pu faire le tag user aussi ^^ mais sinon merci du partage
 

WhiiTe'

Administateur
Ancien staff
Inscription
22 Octobre 2011
Messages
14 709
Réactions
8 497
Points
32 425
RGCoins
0
Tu aurais pu faire le tag user aussi ^^ mais sinon merci du partage

Jamais content :d:
Code:
<script>
function Tag(Pseudo) {
   var tbx = document.getElementById("message");
            tbx.value += "@" + Pseudo + " : ";
            tbx.focus();
        }
</script>
Code:
        <span onclick="Tag('<?php echo $allmsg['pseudo']; ?>')"id="tagShoutbox"></span>
Et dans ton css
Code:
#tagShoutbox {
    background-image: none;
    color: transparent
}

#tagShoutbox:after {
    font-family: "FontAwesome";
    content: "\f02b";
    display: inline-block;
    opacity: 0.5;
    color: rgba(20, 20, 20, 0.78)
}

#tagShoutbox:hover:after {
    -webkit-transform: rotate(400deg);
    -moz-transform: rotate(400deg);
    -o-transform: rotate(400deg);
    -ms-transform: rotate(400deg);
    transform: rotate(400deg);
    -webkit-transform: rotate(400deg);
    -moz-transform: rotate(400deg);
    -ms-transform: rotate(400deg);
    -o-transform: rotate(400deg);
    transition: all 0.35s;
    -webkit-transition: all 0.35s;
    -moz-transition: all 0.35s;
    -ms-transition: all 0.35s;
    -o-transition: all 0.35s;
    cursor: pointer;
    color: #3C7C95
}

:neo:
 

Anthony™

Besoin d'aide ? MP moi !
Premium
Inscription
18 Octobre 2013
Messages
442
Réactions
126
Points
5 634
RGCoins
0
Intéressant pour ceux qui développent un forum. Good topic, GG :love:
 

JustForGamingCom

Développeur WEB / Fondateur : JustForModding.com
Premium
Inscription
25 Février 2013
Messages
1 854
Réactions
988
Points
10 106
RGCoins
0
Jai fait le lien entre Shoutbox, et RG :nerveux:
Je t'avouerai que je ne m'y connais pas trop, meme peux être pas du tout, mise à part les différents languages de programmation :'(

Ta juste voulu posté un commentaire inutile qui rentre en compte dans ton compteur de messages ouais :d:
 
Haut