le cours tuto php envoyer des message privée

ongbak

ongbak Le 8 mai 2017 à 19:17 (Édité le 25 janvier 2019 à 17:53)

je ne comprend le pseudo de l'expéditeur ne s'affiche pas

voila mon code source aidez : 
envoi.php :
<?php 
session_start();
$bdd = new PDO('mysql:host=127.0.0.1;dbname=espace_membre','root','');
if(isset($_SESSION['id']) AND !empty($_SESSION['id'])){
if (isset($_POST['envoi_message'])) {

if (isset($_POST['destinataire'],$_POST['message']) AND !empty($_POST['destinataire']) AND !empty($_POST['message'])) {
$destinataire = htmlspecialchars($_POST['destinataire']);
$message = htmlspecialchars($_POST['message']);
$id_destinataire = $bdd->prepare('SELECT id FROM mem WHERE pseudo = ?');
$id_destinataire->execute(array($destinataire));
$id_destinataire = $id_destinataire->fetch();
$id_destinataire = $id_destinataire['id'];
$ins = $bdd->prepare('INSERT INTO message(id_expediteur,id_destinataire,message ) VALUES(?,?,?)');
$ins->execute(array($_SESSION['id'],$id_destinataire,$message));
$error = "Votre message a bien été envoyé!";

}else{
$error = "Veuillez complétez tout les champs!";
}
}
$destinataires = $bdd->query('SELECT pseudo FROM mem ORDER BY pseudo');
?>
<!DOCTYPE html>
<html>
<head>
<title>Envoi de message</title>
</head>
<body>
<form method="POST">
<label>Destinataire:</label>
<select name="destinataire">
<?php while($d = $destinataires->fetch()){?>
<option><?= $d['pseudo'];?></option>
<?php

?>
</select>
<br><br>
<textarea placeholder="Votre message" name="message"></textarea>
<br><br>
<input type="submit" name="envoi_message" value="Envoyer">
<br><br>
<?php if(isset($error)){ echo '<font color="red">'.$error.'</font>';} ?>
</form>
</body>
</html>
<?php 
    }
?>    
reception.php :
<?php 
session_start();
$bdd = new PDO('mysql:host=127.0.0.1;dbname=espace_membre','root','');
if(isset($_SESSION['id']) AND !empty($_SESSION['id'])){
$msg = $bdd->prepare('SELECT * FROM message WHERE id_destinataire = ?');
$msg->execute(array($_SESSION['id']));
$msg_nbr = $msg->rowCount();
 ?>
<!DOCTYPE html>
<html>
<head>
<title>Boîte de reception</title>
<meta charset="utf-8">
</head>
<body>
<?php 
if($msg_nbr == 0){ echo "Vous n'avez aucun message...";}
while($m = $msg->fetch()){
$p_exp = $bdd->prepare('SELECT pseudo FROM membres WHERE id = ?');
$p_exp->execute(array($m['id_expediteur']));
$p_exp = $p_exp->fetch();
$p_exp = $p_exp['pseudo'];
?>
<b><?= $p_exp; ?></b> vous a envoyé: <br>
<?= $m['message'] ?> 
<?php } ?>
</body>
</html>
<?php } ?>
Profil introuvable

Profil introuvable Le 8 mai 2017 à 21:57

Hello 😉

Moi j'ai trouver la solution, par ici. 😉
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte