créé un chat en PHP

Par 2mo eight, il y a 8 ans


Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fait

<?php if(isset($_POST['pseudo']) AND isset($_POST['message']) AND !empty($_POST['pseudo'])) { $pseudo = $user['pseudo']; $message = htmlspecialchars($_POST['message']); $insertmsg = $db->prepare('INSERT INTO chat(pseudo, message) VALUES (?, ?)'); $insertmsg->execute(array($pseudo, $message)); } $requser = $db->prepare("SELECT id, pseudo, email, avatar, name FROM users WHERE id = ?"); $requser->execute(array(get_session('user_id'))); $user = $requser->fetch(); ?>

Ce que je veux

Je deja un site en local je veut que le utilisateurs puisse utiliser leur propre pseudo pour tchatcher.

merci d'avance.

6 réponses

Laznet, il y a 8 ans

Pourrais-tu nous expliquer un peu plus stp, parce que là je ne comprend pas ce que tu veux faire etc...

fdoksy, il y a 8 ans

en gros tu veut que les users puisse utiliser leur propre pseudo pour tchatcher ?

2mo eight, il y a 8 ans

@Mika445 je veut que le utilisateur puisse tchatcher entre eux
@fdoksy oui exactement

Voici mon code entier

<?php $title = "Chat"; ?> <?php session_start(); ?> <?php include('partials/_header.php'); require_once('filters/aut_filter.php'); require_once('config/database.php'); require_once('includes/functions.php'); ?> <?php if(isset($_POST['submit'])); if(isset($_POST['pseudo']) AND isset($_POST['message']) AND !empty($_POST['pseudo']) AND !empty($_POST['message'])) { $pseudo = $user['pseudo']; $message = htmlspecialchars($_POST['message']); $q = $db->prepare('INSERT INTO chat(pseudo, message) VALUES (?, ?)'); $q->execute(array($pseudo, $message)); $q = $db->prepare("SELECT id, pseudo, email, avatar, name FROM users WHERE id = ?"); $q->execute(array(get_session('user_id'))); $user = $q->fetch(); } ?> <div id="main-content"> <div class="container"> <div class="row"> <!--</div>--> <div class="col-md-6"> <div class="panel panel-default dox"> <div class="panel-heading"> <h3 class="panel-title">Chat</h3> </div> <div class="panel-body"> <div class="row"> <div class="col-md-5"> <?php $allmsg = $db->query('SELECT * FROM chat ORDER BY id DESC'); while($msg = $allmsg->fetch()) { ?> <b><img src="<?= $user->avatar ? $user->avatar : get_avatar_url($email) ?>" class="avatar-xs">&nbsp;&nbsp;<?php echo $msg['pseudo']; ?>: </b><?php echo $msg['message']; ?><br /> <?php } ?> </div> </div> <div class="col-sm-6"> <div class="form-group"> <form method="post" action=""> <textarea type="text" name="message" class="form-control" rows="4" cols="70" placeholder="Message" /></textarea><br/> <input type="submit" class="btn btn-primary" value="Envoyer" /> </form> </div> </div> <div class="col-sm-6 default-dox"> </div> </div> <div class="col-md-12"> </div> </div> </div> <div class="row"> <div class="col-md-4"> <div class="panel panel-default dox"> <div class="panel-heading"> <h3 class="panel-title">Liste Ados connecter</h3> </div> <div class="panel-body"> <div class="row"> <div class="col-md-5"> </div> </div> </div> </div> </div> <style type="text/css"> .dox{ margin-top: 80px; } textarea{ resize:none;} .dox-titlle{ color: color: #337AB7; } </style>

le message son pas afficher aussi son pas dans ma bdd Table "chat"

Jinou, il y a 8 ans

j'ai pas envie de regarder ton code parce que je suis fatigué ^^.
Mais pour que le user choisisse son pseudo, stock le en Session lors de la connexion.

Et pour tchater, tu insert le message via un formulaire, et tu affiche les messages dans ton tchat tout simplement. Un petit coup d'ajax pour ne pas réactualisé la page et le tour est joué.
Pour plus de détails => attendre que je fasse dodo :D

2mo eight, il y a 8 ans

@Jinou stp jespere que ta bien dodo, rgarde mon code jsui pommé

Jinou, il y a 8 ans

Je te conseil donc de revoir tes cours car ce que tu cherches à faire est la base php.
Il faut savoir insérer dans une base de donnée et lire dans une base de donnée.