Chat

Résolu/Fermé
kelman - 24 mars 2016 à 22:05
 Kelman - 29 mars 2016 à 21:41
Bonjour,

Je suis en train de créer une application du genre chat.
J'ai deux tables :
>inscription :
id_membre : numérique, auto-incrémentation, clé primaire.
nom_membre : varchar.
password_membre : varchar.
photo_membre : varchar.

>message :
id_message : numérique, auto-incrémentation, clé primaire.
message : varchar.
date_message : timetamp.
id_membre : numérique.

Mon problème :
Comment afficher avec PHP, SQL, ... les messages envoyés à un membre ? De telle sorte que, lorsqu'il est connecté, qu'il puisse lire les messages qu'il a reçu. Et comment envoyé un message spécialement à un membre ?
Merci.
A voir également:

2 réponses

Pour tes tables Tu devrais utiliser les structures suivantes
TABLE : MESSAGE
ID : INT AI PK
DATE : TIMESTAMP()
FROM : INT(11)
TO : INT(11)
MESSAGE : LONGTEXT


TABLE : USERS
ID : INT AI PK
PSEUDO : VARCHAR(60)
MAIL : VARCHAR(255)
PASSWORD : VARCHAR(255)
PHOTO : VARCHAR(255)


Dans PHP Tu fait la requête suivante

$UserId = ID du l'utilisateur
mysql_query("SELECT * FROM MESAGES WHERE TO ='$UserId'");


Utilise PDO
0
GBEGNRAN KOFFI MESSAN Messages postés 3 Date d'inscription vendredi 21 février 2014 Statut Membre Dernière intervention 29 mars 2016
25 mars 2016 à 20:16
Bonjour Xav !
Merci pour votre réponse. Mais, je ne suis pas encore satisfait.
Quand vous définissez les propriétés des clés primaires, vous avez utilisé : pk. J'ai cherché ce pk partout dans PhpMyAdmin, mais en vain. Et aussi, vous avez utilisé également les champs : TO et FROM. Qui ne seront pas remplis par l'utilisateur. À quoi servent ces champs(TO et FROM) dans la table MESSAGE ? Aidez-moi à trouver une solution à mon problème.
Merci d'avance.

--
0
Salut ;-)

AI = Auto incrémentation
PK = Primary Key (clé primaire)

Le champ to tu le récupére avec php

<?php
  session_start();
  function getUser($login="",$pass=""){
    // tu te connecte avec PDO et tu récupére grace a la requette du style : "SELECT * FROM users WHERE login ='$login' AND pass='$pass';"
    //tu stock ton résultat dans un array genre $maVar[...] ou mieu un objet $maVar->...
    if(count($maVar)!=1){
      //il y a un user
      $_SESSION['user']=$maVar;
      return true;
    }else{
      //il ne trouve pas d'user
      return false;
    }
    
    //Fait tout ca dans une class ca seras plus beau :-) tu récupére tes variable dans la session
    function getMessage($_SESSION['user']->id){
      // tu te connecte avec PDO et tu récupére grace a la requette du style : "SELECT * FROM messages WHERE to ='$userId';"
      return //ta réponse de requette puis tu fait un while
    }
?>


<input type="hidden" name="userId" value="<?php echo $_SESSION['user']->id ?>" />
<input type="hidden" name="userId" value="<?php echo $toId ?>" />
0
Bonsoir !
Merci D'avance. Vôtre a bien marché malgré les difficultés.
0
Kelman > Kelman
29 mars 2016 à 21:41
Merci Xav. Ça a bien marché. Bonne soirée
0