voici la mon table
CREATE TABLE messages (
id int(11) NOT NULL auto_increment,
id_expediteur int(11) NOT NULL default '0',
id_destinataire int(11) NOT NULL default '0',
date datetime NOT NULL default '0000-00-00 00:00:00',
titre text NOT NULL,
message text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
et le script que je cris deja pour envoyer un message
<?php
// si l'utilisateur n'est pas connecter
if(!isset($_SESSION['connex']) )
{
include('index.php');
}
if (isset($_POST['go']) && $_POST['go'] == 'Envoyer')
{
if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message']))
{
$erreur = 'Au moins un des champs est vide.';
}
else
{
// si tout a été bien rempli, on insère le message dans notre table SQL
$sql = 'INSERT INTO Forum_Message(id_expediteur,id_destinataire,date,titre,message) VALUES( "'.$_SESSION['iutilisateur']['Id'].'", "'.$_POST['destinataire'].'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['message']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
include('contenu/Membre_Message.php');
}
}
?>
<a href="?page=Membre_Message.php">Retour à l'accueil</a><br /><br />
Envoyer un message :<br /><br />
<?php
// on prépare une requete SQL selectionnant tous les login des membres du site en prenant soin de ne pas selectionner notre propre login, le tout, servant à alimenter le menu déroulant spécifiant le destinataire du message
$sql = 'SELECT USERS.Id as nom_destinataire, USERS.Id as id_destinataire FROM USERS WHERE Id = "'.$_SESSION['iutilisateur']['Id'].'" ORDER BY Id ASC';
// on lance notre requete SQL
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows ($req);
if ($nb == 0)
{
// si aucun membre n'a été trouvé, on affiche tout simplement aucun formulaire
echo 'Vous êtes le seul membre inscrit.';
}
else
{
// si au moins un membre qui n'est pas nous même a été trouvé, on affiche le formulaire d'envoie de message
?>
<form action="?page=envoyerMessage" method="post" >
Pour : <select name="destinataire">
<?php
// on alimente le menu déroulant avec les login des différents membres du site
while ($data = mysql_fetch_array($req))
{
echo '<option value="' , $data['id_destinataire'] , '">' , stripslashes(htmlentities(trim(nom_utilisateur($data['nom_destinataire'])))) , '</option>';
}
?>
</select><br />
Titre :
<input type="text" name="titre" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>"><br />
Message :
<textarea name="message"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?>
</textarea><br />
<input type="submit" name="go" value="Envoyer">
</form>
<?php
}
mysql_free_result($req);
?>
</select>
<?php
// si une erreur est survenue lors de la soumission du formulaire, on l'affiche
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
je vien d'ecrire le script qui permet de repondre le message recu, mais ce pendant ca marche pas voici le code
<?php
// si l'utilisateur n'est pas connecter
if(!isset($_SESSION['connex']) )
{
include('index.php');
}
if (isset($_POST['go']) && $_POST['go'] == 'Envoyer')
{
if (empty($_POST['destinataire']) || empty($_POST['titre']) || empty($_POST['message']))
{
$erreur = 'Au moins un des champs est vide.';
}
else
{
// si tout a été bien rempli, on insère le message dans notre table SQL
$sql = 'INSERT INTO Forum_Message(id_expediteur,id_destinataire,date,titre,message) VALUES( "'.$_SESSION['iutilisateur']['Id'].'", "'.$_POST['destinataire'].'", "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_POST['titre']).'", "'.mysql_escape_string($_POST['message']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
include('contenu/Membre_Message.php');
}
}
?>
<a href="?page=Membre_Message.php">Retour à l'accueil</a><br /><br />
Envoyer un message :<br /><br />
<?php
// on prépare une requete SQL selectionnant tous les login des membres du site en prenant soin de ne pas selectionner notre propre login, le tout, servant à alimenter le menu déroulant spécifiant le destinataire du message
$sql = 'SELECT USERS.Id as nom_destinataire, USERS.Id as id_destinataire FROM USERS WHERE Id = "'.$_SESSION['iutilisateur']['Id'].'" ORDER BY Id ASC';
// on lance notre requete SQL
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows ($req);
if ($nb == 0)
{
// si aucun membre n'a été trouvé, on affiche tout simplement aucun formulaire
echo 'Vous êtes le seul membre inscrit.';
}
else
{
// si au moins un membre qui n'est pas nous même a été trouvé, on affiche le formulaire d'envoie de message
?>
<form action="?page=envoyerMessage" method="post" >
Pour : <select name="destinataire">
<?php
// on alimente le menu déroulant avec les login des différents membres du site
while ($data = mysql_fetch_array($req))
{
echo '<option value="' , $data['id_destinataire'] , '">' , stripslashes(htmlentities(trim(nom_utilisateur($data['nom_destinataire'])))) , '</option>';
}
?>
</select><br />
Titre :
<input type="text" name="titre" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>"><br />
Message :
<textarea name="message"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?>
</textarea><br />
<input type="submit" name="go" value="Envoyer">
</form>
<?php
}
mysql_free_result($req);
?>
</select>
<?php
// si une erreur est survenue lors de la soumission du formulaire, on l'affiche
if (isset($erreur)) echo '<br /><br />',$erreur;
?>