bonsoir chers amis j’ai un soucis en PHP. après avoir étudier le cours de PHP j’ai voulu crée un forum comme test. Dans le forum on a une page de connexion et d’inscription. Lorsque l’utilisateur se connecte on crée une session pour l’utilisateur. Le problème que je rencontre est lorsque je connecte deux personnes sur mon ordinateur lorsque l’un envoie un message le message s’enregistre sans problème en son nom et lorsque l’autre ecris un message a son tour le message s’enregistre au nom du premier qui a lancer le message c’est ce que je n’arrive pas a comprendre. j’ utilise le design pattern MVC.
voici la fonction dans le modèle qui permet d’interagir avec la base de donnée.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php session_start(); function get_login() { $bdd = new PDO('mysql: host=localhost; dbname=bd_forum', 'root', ''); $req = $bdd -> prepare('SELECT id_membre FROM membres where pseudo_membre=?'); $req -> execute(array($_SESSION['login'])); $info = $req->fetch(); $req -> closeCursor(); return $info['id_membre']; } function put_message($message_disc, $id_posteur) { $bdd = new PDO('mysql: host=localhost; dbname=bd_forum', 'root', ''); $req = $bdd -> prepare('INSERT INTO discussions(message_disc, id_posteur, date_disc) VALUES(?, ?, CURDATE())'); $req->execute(array($message_disc, $id_posteur)); $req -> closeCursor(); } |
et la fonction dans le contrôleur qui permet de lancer l’enregistrement:
1 2 3 4 5 6 7 8 9 10 11 12 | <?php include_once('C:\wamp\www\forum\modele\enregistrement_message.php'); include_once('C:\wamp\www\forum\modele\get_billets.php'); $identifiant = get_login(); $mes = $_POST['message']; put_message($mes, $identifiant); $billets = get_billets(); foreach($billets as $cle => $billet) { $billets[$cle]['message_disc'] = nl2br(htmlspecialchars($billet['message_disc'])); } include_once('C:\wamp\www\forum\vue\index.php'); |
pouvez vous m’aider? Merci d’avance.