Chat : Retenir le pseudo
Résolu
Bonjour tout le monde (je suis nouveau),
Suite au tutoriel merveilleux https://openclassrooms.com/forum/sujet/tp-mini-chat-94457 de m@teo21 j'ai fais le chat sur mon humble site : http://bouboul-iv.legtux.org ... J'aimerais mettre que sa retienne le pseudo du gars mais je n'y arrive pas. Help me Please !
6 réponses
-
Utilise les sessions ;)
-
Qu'est ce que j'étais nul à l'époque !
-
Envoie ton code je t'aiderais mieux ;)
-
Mauvaise id le coockie ! En plus c'est plus chiant à gérer que la session ;)
Fais ceci :<div id="corps"> <div class="chat"> <form action="minichat_post.php" method="post"> <p> <?php if(isset($_SESSION['pseudo'])){ echo "<b>".$_SESSION['pseudo']."</b><br />"; } else{ ?> <label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" id="pseudo" /><br /> <?php } ?> <label for="message">Message</label> : <input type="text" name="message" id="message" /><br /> <input type="submit" value="Envoyer" /> <a href="http://bouboul-IV.legtux.org/minichat.php"><input type=button value="Actualiser"></a> </p> </form> </div> <?php try{ $bdd = new PDO('mysql:host=legtux.org;dbname=****', '***', '***'); } catch(Exception $e){ die('Erreur : '.$e->getMessage()); } $reponse = $bdd->query('SELECT pseudo, message, time FROM minichat ORDER BY ID DESC LIMIT 0, 12'); while ($donnees = $reponse->fetch()){ echo '<p><b>'.htmlspecialchars($donnees['pseudo']).'</b>'.'<b> le '.date('d:m:y H:i',$donnees['time']) .' </b> :<br /> ' . htmlspecialchars($donnees['message']) . '</p>'; } $reponse->closeCursor(); ?> </div>
Et dans minichat_post.php tu ajout en première ligne :session_start(); if(!isset($_SESSION['pseudo'])){ $_SESSION['pseudo'] = $_POST['pseudo']; }
Pense lors de l'insertion dans la base de donnée a remplacer dans ta requette insert into le $_POST['pseudo'] par $_SESSION['pseudo']
Voila :) -
Houla tant que ça :p
-
Salut !
Tu peux gérer ceci avec un cookie, javascript ou php, c'est toi qui voit.
Le principe est de créer un cookie, auquel tu donnes une date (autant que tu le souhaites), tu lui donnes comme valeur le pseudo de l'utilisateur.
Tu récupères le cookie, si il existe, tu ecris dans ton formulaire la valeur du cookie, sinon tu laisses vide.
Ca me semble être la meilleure solution, bonne chance !