Messagerie interne pour espace membre...

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Messagerie interne pour espace membre...

Message le Dim Aoû 06, 2006 19:39

Bonjour a tous,

Je me joint encore à vous pour vous demandez conseil, la messagerie interne de mon espace membre :roll: (je crois que vous le savez déjà!!)

Donc, voyons voir....Je la créer moi-même, donc j'ai un peu de mal!!

Voici ce que j'ai fait :

envoie_message.php
Code: Tout sélectionner
<?php
session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté
require("conf.php3"); //Commme d'ab

if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
{
   die('Vous n\'êtes pas autorisez à acceder à cette page.'); //Si non, on arrete le script et on affiche un message
}

$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'");
$result = mysql_fetch_array ($requete);

$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
$clan = $result['clan'];
/* On peut recuperer plus d'info si besoin */


$destinataire = $_POST['destinataire']; //On recupère les infos du message...
$objet = $_POST['objet'];
$message = $_POST['message'];

      ##################
      ##Vérification du message##
      ##################
      
            
      if ($destinataire == "" ) // Si le champ du destinataire est vide...
      {
         $reponse = 'Vous n\'avez pas entrez de destinataires! <a href="javascript:history.back(1)">Retour au formulaire</a>';
      }

         elseif ($objet == "") // Si le champ de l'objet est vide...
      {
         $reponse = 'Vous n\'avez pas entrez d\'Objet !';
      }
   
         elseif ($message == "") // Si il n'y a pas de message...
      {
         $reponse = 'Vous n\'avez pas de texte dans votre message!';
      }

      else // Alors, si tout est rempli, on sauvegarde sur la bdd!
      {
         $sql = connect_sql(); //On se connecte à MySQL
         mysql_query("INSERT INTO pdf_mess VALUES ('', '$pseudo', '$destinataire', '$objet', '$message', '', '')");
         $reponse = 'Message envoyé avec succès!';
         mysql_close($sql);//On se deconnecte
      }

      
?>

<html>
<body>
<? echo $reponse; ?> <!-- On affiche la reponse de tout le code du dessus -->
</body>
</html>


index.php
Code: Tout sélectionner
<?php
session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté
require("conf.php3"); //Commme d'ab

if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
{
   die('Vous n\'êtes pas autorisez à acceder à cette page.'); //Si non, on arrete le script et on affiche un message
}

$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'");
$result = mysql_fetch_array ($requete);

$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
$clan = $result['clan'];
/* On peut recuperer plus d'info si besoin */

?>

<html>

<table border="0">
<form name="form3" id="news" method="post" action="envoie_message.php">
<script src="smilies.js" type="text/javascript"></script>
<tr><td>Destinataire : </td><td><input type="text" name="destinataire" id="destinataire"> <?php include("smilies/smilies1.html") ?></td>
<br>
<tr><td>Objet : </td><td><input type="text" name="objet" id="objet"> <?php include("smilies/smilies2.html") ?></td></tr>
<tr><td>Message : </td><td><textarea rows="8" cols="40" name="message" id="message"></textarea></td></tr>
<tr><td></td><td><input type="button" value="b" onclick="storeCaret('b')"><input type="button" value="I" onclick="storeCaret('i')"><img src="smilies/ange.gif" OnClick="smile(':ange:')" /><input type="submit" value="Envoyer"></td></tr>
</form>
</table>
</html>

L'envoie de message mache bein, ils se sauvegarde sur la bdd.

Mais le HIC!
Lire un message qui nous est adrssé :( (sachant que j'ai deux table!)
J'ai bien sûr commencé!


Code: Tout sélectionner
<?php
session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté
require("conf.php3"); //Commme d'ab

if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
{
   die('Vous n\'êtes pas autorisez à acceder à cette page.'); //Si non, on arrete le script et on affiche un message
}

$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'");
$result = mysql_fetch_array ($requete);
$requete1 = mysql_query("SELECT * FROM pdf_mess");


$id = $result['id'];
$pseudo = $result['pseudo'];
$mail = $result['mail'];
$clan = $result['clan'];
$destinataire = $result['destinataire'];
$nom = $result['nom'];


/* On peut recuperer plus d'info si besoin */

      #################
      ###Nouveau message??###
      #################
      
      if ($destinataire == '$pseudo')
         {
         $resultat = "Vous avez un nouveau message de $nom";
         }
      
?>
<html>
<?php echo"$resultat" ?>

</html>


Et bien, merci a vous de me donner conseil afin de lire les message qui sont destinée a un membe... ;)

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Dim Aoû 06, 2006 20:31

Tu n'as pas vraiment expliqué le problème. Montre également la structure de la base de donnée.

A+

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Message le Dim Aoû 06, 2006 20:58

Le pb, je n'arrive pas a lire les messgae destiné a un membre, mais ca marche pour l'envoie du message ;)

table pdf_membe : id pseudo pass mail confirm adresseIP clan

Table pdf_mess : id nom destinataire objet message jour_envoi heure_envoi

Merci ;)

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Dim Aoû 06, 2006 21:00

Ben quand un membre se connecte tu ouvres des sessions non ? Ben tu mets l'id du membre dans la session et quand il va sur sa boite tu séléctionne tous les message qui lui sont destiné.

A+

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Message le Dim Aoû 06, 2006 21:07

Oups, comprend pas! :(

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Dim Aoû 06, 2006 21:13

Ce que je comprend pas, c'est que tu arrives facilement à insérer le message mais pas à le récupérer... Pourtant si on prend un peu de recule c'est pas compliqué.

Quand un membre se connecte, tu récupères bien des informations sur lui, genre Pseudo, IDMembre, etc. pour par exemple afficher sur un partie du genre "Bonjour Pierre".

Donc si tu as ce genre d'information, quand tu vas sur la page pour afficher les messages d'un membre tu fais ceci :
Code: Tout sélectionner
$requete1 = mysql_query("SELECT * FROM pdf_mess WHERE destinataire='".$IDMembre."'");

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Message le Dim Aoû 06, 2006 21:17

AHHH, je vais regarder, et je te redis, ;)

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Message le Dim Aoû 06, 2006 21:27

Juste omme ca, il faut le déclarer id, avant ou bien je peut aussi le faire après?

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Dim Aoû 06, 2006 21:30

Non, faut la déclarer avant que tu l'utilises.

A+

pctuning
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 262
Inscription: 15 Mar 2006

Message le Lun Aoû 07, 2006 15:44

Voila mon fichier lecture_message.php, mais ca ne marche pas!! :(


Code: Tout sélectionner
<?php
session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté
require("conf.php3"); //Commme d'ab

if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
{
   die('Vous n\'êtes pas autorisez à acceder à cette page.'); //Si non, on arrete le script et on affiche un message
}

$sql = connect_sql();
$pseudo_membre = $_SESSION['pseudo'];
$IDmembre = $_SESSION['id'];
$requete = mysql_query("SELECT * FROM pdf_membre WHERE `pseudo`='$pseudo_membre'");
$result = mysql_fetch_array ($requete);
$requete1 = mysql_query("SELECT * FROM pdf_mess WHERE destinataire='".$IDMembre."'")or die (mysql_error());
$result1 = mysql_fetch_array($requete1)or die (mysql_error());


$mail = $result['mail'];
$clan = $result['clan'];
$destinataire = $result['destinataire'];
$nom = $result['nom'];


/* On peut recuperer plus d'info si besoin */

      #################
      ###Nouveau message??###
      #################
      
      echo "$pseuso_membre, Vous avez un nouveau message de $nom";
         
      
?>
<html>
<?php echo"$resultat" ?>

</html>
      

arthezius
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 1
Inscription: 30 Juin 2008

Message le Lun Juin 30, 2008 14:04

Le champ : $IDmembre = $_SESSION['id']; doit être chargé au moment de la connexion.
Sinon ce champ reste vide.

A la connexion tu récupère bien les données de ta table et les met en session, comme par exemple ton
$pseudo_membre = $_SESSION['pseudo'];
que tu récupère ici.
Fait de même avec l'ID et ça devrai marcher.

Edit: OUPS :D j'avais pas vu que ce meessage datais de 2006... je suis tombé dessus par hasard dans mes recherches...


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Hello

  • Calculer le ratio de liens profonds
    Cet outil vous permet de calculer le taux de liens profonds vers un site web. Un lien profond est un lien qui ne pointe pas vers la page d'accueil mais au contraire vers une page interne du site. Les sites dont l'essentiel du référencement vient de leurs inscriptions dans des annuaires ont un taux de liens profonds faible ; à l'inverse, les sites de référence ont souvent un taux de liens profonds plus important, signe que leur contenu a suscité de nombreux liens spontanés.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités