Probléme de récupération du pseudo avec id_me

Résolu/Fermé
will.smith Messages postés 256 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 27 mars 2010 - 11 févr. 2009 à 17:21
will.smith Messages postés 256 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 27 mars 2010 - 11 févr. 2009 à 22:47
Bonjour,
j'ai fais un mini chat donc j'ai voulu mettre un code pour récupéré le id_membre

mais il met bien les messages et pas le pseudo mais si on voit dans la base sql il met le chiffre 5 qui correspond à mon pseudo

donc coment fait pour qu'il met le pseudo avec le id_membre

volà mon code :

<?php

      // Cette fonction doit être appelée avant tout code html
 
	  session_start();
 
	  // Maintenant, on se connecte à la base de données
 
	  include("includes/identifiants.php");
	  include("includes/fonction.php");
	  include("bbcode/bbcode.php");
 
	  mysql_connect($adresse, $nom, $motdepasse);
	  mysql_select_db($database);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Discuter entre vous</title>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-15" />
<link href="design/par_default.css" rel="stylesheet" media="screen" type="text/css" title="Design" />
<link href="design/scode.css" rel="stylesheet" media="screen" type="text/css" title="Design" />
<link href="design/forum.css" rel="stylesheet" media="screen" type="text/css" title="Design" />
<script type="text/javascript" src="javasscripts/bbcode.js"></script>
</head> 
<body>
                                    <div class="cadre_du_haut">
									<?php include("menu/menu_du_haut.php"); ?>
									</div>
									<!-- fin div class="cadre_du_haut" -->
<br />
									<div class="cadre_du_menu_de_gauche">
									<?php include("menu/menu_de_gauche.php"); ?>
									</div>
									<!-- fin div class="cadre_du_menu_de_gauche" -->
									<div class="cadre_du_programme">
<?php
// Par sécurité, on vérifie que le membre qui accède à cette page n'est pas déjà connecté

if (isset($_SESSION['pseudo']))
{
//c'est bon il est connecté
}

else {

exit('<p class="texte_blanc">Désolé, mais vous ne pouvez pas accéder à cette page</p></div></body></html>');
}
?>
<?php
if (isset($_POST['message'])) // Si les variables existent
{
    if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer
    {
        // D'abord, on se connecte à MySQL
mysql_connect("", "", "");
mysql_select_db("");
 
        // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
        $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
		
//On ajoute la date et heure

      $date = date('d/m/Y');
	  $heure = date('H:i');

        // Ensuite on enregistre le message

       $son_id=mysql_query("select id_membre from forum_membres where membre_pseudo = 'tester'") ;
while ($row = mysql_fetch_assoc($son_id)) {
    $id_membre = $row['id_membre'];
}

mysql_query("INSERT INTO minichat (`id`,`id_membre`,`message`,`date`,`heure`) VALUES ('',".$id_membre.",'".$_POST['message']."','".date("d/m/y")."' ,'".date("H:i")."')") or die (mysql_error() );

        // On se déconnecte de MySQL
        mysql_close();
    }
}  
 
 
// Que l'on ait enregistré des données ou pas...
// On affiche le formulaire puis les 10 derniers messages
 
// Tout d'abord le formulaire :
?>
 
 
 
<form action="minichat.php" method="post" name="formulaire" id="formulaire">
 
<p>

      <img src="images/smileys/clin.png" onclick="javascript:smilies(' :clin: ');return(false)" alt="clin" title="clin" />
	  <img src="images/smileys/blink.gif" onclick="javascript:smilies(' :blink: ');return(false)" alt="blink" title="blink" />
	  <img src="images/smileys/heureux.png" onclick="javascript:smilies(' :heureux: ');return(false)" alt="heureux" title="heureux" />
	  <img src="images/smileys/hihi.png" onclick="javascript:smilies(' :hihi: ');return(false)" alt="hihi" title="hihi" />
<br />
<label>Message :</label>  <input type="text" id="textarea" name="message" />
<br />
<input type="submit" value="Envoyer" /></p>
</form>
 
 
 
<?php
 
// Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("", "", "");
mysql_select_db("");
 
// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");
 
// On se déconnecte de MySQL
mysql_close();
 
// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
      //A partir d'ici tu doit faire appel à ta fonction de parsage comme ceci
 
      $message_parse = code($donnees['message']);
?>
 
<p><?php echo '<a href="forum/voirprofil.php?m='.$donnees['membre_pseudo'].'&amp;action=consulter">
		           '.$donnees['membre_pseudo'].'</a>' ?><div class="texte_blanc"> Posté le <?php echo $donnees['date']; ?> à <?php echo $donnees['heure']; ?>
<br /><?php echo code($donnees['message']); ?></div></p>
 
 
 
<?php
}
// Fin de la boucle, le script est terminé !
?>

									</div>
									<!-- fin div class="cadre_du_programme" -->
</body>
</html>


merci de votre aide
A voir également:

4 réponses

will.smith Messages postés 256 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 27 mars 2010 10
11 févr. 2009 à 20:23
re je pense que ce bout du code qui ne veut pas insérré id_membre

       // Ensuite on enregistre le message

       $son_id=mysql_query("select id_membre from forum_membres where membre_pseudo = 'tester'") ;
while ($row = mysql_fetch_assoc($son_id)) {
    $id_membre = $row['id_membre'];
}

mysql_query("INSERT INTO minichat (`id`,`id_membre`,`message`,`date`,`heure`) VALUES ('',".$id_membre.",'".$_POST['message']."','".date("d/m/y")."' ,'".date("H:i")."')") or die (mysql_error() );

        // On se déconnecte de MySQL
        mysql_close();
    }
}  


et ma table :

CREATE TABLE `minichat` (
  `id` int(11) NOT NULL auto_increment,
  `id_membre` int(4) default NULL,
  `message` varchar(255) NOT NULL default '',
  `date` varchar(255) character set latin1 collate latin1_bin NOT NULL,
  `heure` varchar(255) character set latin1 collate latin1_bin NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=129 ;



donc je comprend pas pour quoi il ne veut insérré id_membre

merci
0
will.smith Messages postés 256 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 27 mars 2010 10
11 févr. 2009 à 22:32
re je vien trouvé et ca marche bien dc je met résolu
0
burnedsyn Messages postés 170 Date d'inscription samedi 29 septembre 2007 Statut Membre Dernière intervention 21 février 2009 16
11 févr. 2009 à 22:42
tant mieux c'est bien heureux pour toi
0
will.smith Messages postés 256 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 27 mars 2010 10
11 févr. 2009 à 22:47
mais là j'ai juste remarquer un détail à propos de lheure

il met 5 minutes en -

par exemple on poste vers 22 h 35 et sur la page il met 22 h 30

donc come j'ai mis dans ma table date et heure et il faudras mettre timestamp dans la base sql et ensuite il faut modifie le code de la page pour remettre l'heure à jour mais ça je pense savoir le faire mais j'ai peur de me trompé lol
0