Créer un compte
Connexion

messagerie instantané

Pour créer et répondre aux sujets, vous devez être connecté.
Pages: 1
Auteur Message
warlolo
02/10/2014 à 11:15:16
warlolo
Membre
Bonjour j'ai trouver script ici sur supportduweb remarquable, sur la messagerie instantané mais j'arrive pas a le faire fonctionné .
Mon problème est le suivant:

jai créé deux table dans phpadmin une membre (espace connexion)qui remplace users et une table message_mp ( pour messagerie instantané)qui remplace pm, en passent l'espace membre marche parfaitement.

Mes problèmes quand j'ouvre list_message_mp.php :

-Messages non-lus ( Avertissement : mysql_num_rows () s'attend à ce paramètre 1 pour être ressource, booléen donné dans /www/messagerie/list_message_mp.php en ligne 29 0):

-Attention : mysql_fetch_array () s'attend à ce que le paramètre 1 pour être ressource, booléen donné dans /www/messagerie/list_message_mp.php en ligne 39

-Avertissement : mysql_num_rows () s'attend à ce paramètre 1 pour être ressource, booléen donné dans / www / Messagerie / list_message_mp.php en ligne 51

-Messages lus ( Avertissement : mysql_num_rows () s'attend à ce paramètre 1 pour être ressource, booléen donné dans /www/messagerie/list_message_mp.php en ligne 62 0):

-Messages lus ( Avertissement : mysql_num_rows () s'attend à ce paramètre 1 pour être ressource, booléen donné dans /www/messagerie/list_message_mp.php en ligne 62 0):

Mon code modifier de list_message_mp.php pour apeller les tables membre et message_mp:
<?php

include($_SERVER['DOCUMENT_ROOT']."/www/Id/includes/config.php")

?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Messages Personnels</title>
</head>
<body>
<div class="header">
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</div>
<div class="content">
<?php
//On verifie que lutilisateur est connecte
if(isset($_SESSION['username']))
{
//On affiche la liste des messages de l'utilisateur sous la forme dun tableau
//Deux requettes sont executees, une pour recuperer les messages non-lus et une pour les messages lus
$req1 = mysql_query('select m1.id, m1.title, m1.timestamp, count(m2.id) as reps, membre.id as userid, membre.username from message_mp as m1, message_mp as m2,membre where ((m1.user1="'.$_SESSION['userid'].'" and m1.user1read="no" and membre.id=m1.user2) or (m1.user2="'.$_SESSION['userid'].'" and m1.user2read="no" and membre.id=m1.user1)) and m1.id2="1" and m2.id=m1.id group by m1.id order by m1.id desc');
$req2 = mysql_query('select m1.id, m1.title, m1.timestamp, count(m2.id) as reps, membre.id as userid, membre.username from message_mp as m1, message_mp as m2,membre where ((m1.user1="'.$_SESSION['userid'].'" and m1.user1read="yes" and membre.id=m1.user2) or (m1.user2="'.$_SESSION['userid'].'" and m1.user2read="yes" and membre.id=m1.user1)) and m1.id2="1" and m2.id=m1.id group by m1.id order by m1.id desc');
?>
Voici la liste de vos messages:<br />
<a href="new_pm.php" class="link_new_pm">Nouveau message priv&eacute;</a><br />
<h3>Messages non-lus(<?php echo intval(mysql_num_rows($req1)); ?>):</h3>
<table>
<tr>
<th class="title_cell">Titre</th>
<th>Nb. R&eacute;ponses</th>
<th>Participant</th>
<th>Date d'envoi</th>
</tr>
<?php
//On affiche la liste des messages non-lus
while($dn1 = mysql_fetch_array($req1))
{
?>
<tr>
<td class="left"><a href="read_pm.php?id=<?php echo $dn1['id']; ?>"><?php echo htmlentities($dn1['title'], ENT_QUOTES, 'UTF-8'); ?></a></td>
<td><?php echo $dn1['reps']-1; ?></td>
<td><a href="profile.php?id=<?php echo $dn1['userid']; ?>"><?php echo htmlentities($dn1['username'], ENT_QUOTES, 'UTF-8'); ?></a></td>
<td><?php echo date('d/m/Y H:i:s' ,$dn1['timestamp']); ?></td>
</tr>
<?php
}
//Sil na aucun message non-lu, on le dit
if(intval(mysql_num_rows($req1))==0)
{
?>
<tr>
<td colspan="4" class="center">Vous n'avez aucun message non-lu.</td>
</tr>
<?php
}
?>
</table>
<br />
<h3>Messages lus(<?php echo intval(mysql_num_rows($req2)); ?>):</h3>
<table>
<tr>
<th class="title_cell">Titre</th>
<th>Nb. R&eacute;ponses</th>
<th>Participant</th>
<th>Date d'envoi</th>
</tr>
<?php
//On affiche la liste des messages lus
while($dn2 = mysql_fetch_array($req2))
{
?>
<tr>
<td class="left"><a href="read_pm.php?id=<?php echo $dn2['id']; ?>"><?php echo htmlentities($dn2['title'], ENT_QUOTES, 'UTF-8'); ?></a></td>
<td><?php echo $dn2['reps']-1; ?></td>
<td><a href="profile.php?id=<?php echo $dn2['userid']; ?>"><?php echo htmlentities($dn2['username'], ENT_QUOTES, 'UTF-8'); ?></a></td>
<td><?php echo date('d/m/Y H:i:s' ,$dn2['timestamp']); ?></td>
</tr>
<?php
}
//Sil na aucun message lu, on le dit
if(intval(mysql_num_rows($req2))==0)
{
?>
<tr>
<td colspan="4" class="center">Vous n'avez aucun message lu.</td>
</tr>
<?php
}
?>
</table>
<?php
}
else
{
echo 'Vous devez &ecirc;tre connect&eacute; pour acc&eacute;der &agrave; cette page.';
}
?>
</div>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour &agrave; l'accueil</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
</body>
</html>

Mon code modifier de new_message_mp.php pour apeller les tables membre et message_mp:
-erreur; Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /www/messagerie/new_message_mp.php on line 46
Le destinataire de votre message n'existe pas.

<?php

include($_SERVER['DOCUMENT_ROOT']."/www/Id/includes/config.php")

?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Nouveau MP</title>
</head>
<body>
<div class="header">
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</div>
<?php
//On verifie si lutilisateur est connecte
if(isset($_SESSION['username']))
{
$form = true;
$otitle = '';
$orecip = '';
$omessage = '';
//On verifie si le formulaire a ete valide
if(isset($_POST['title'], $_POST['recip'], $_POST['message']))
{
$otitle = $_POST['title'];
$orecip = $_POST['recip'];
$omessage = $_POST['message'];
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$otitle = stripslashes($otitle);
$orecip = stripslashes($orecip);
$omessage = stripslashes($omessage);
}
//On verifie si tout les champs ont ete remplis
if($_POST['title']!='' and $_POST['recip']!='' and $_POST['message']!='')
{
//On echappe les variables pour les utiliser dans une requette SQL
$title = mysql_real_escape_string($otitle);
$recip = mysql_real_escape_string($orecip);
$message = mysql_real_escape_string(nl2br(htmlentities($omessage, ENT_QUOTES, 'UTF-8')));
//On verifie que le destinataire existe
$dn1 = mysql_fetch_array(mysql_query('select count(id) as recip, id as recipid, (select count(*) from message_mp) as nmessage_pm from membre where username="'.$recip.'"'));
if($dn1['recip']==1)
{
//On verifie que le destinataire nest pas lutilisateur meme
if($dn1['recipid']!=$_SESSION['userid'])
{
$id = $dn1['nmessage_mp']+1;
//On envoi le message
if(mysql_query('insert into message_mp (id, id2, title, user1, user2, message, timestamp, user1read, user2read)values("'.$id.'", "1", "'.$title.'", "'.$_SESSION['userid'].'", "'.$dn1['recipid'].'", "'.$message.'", "'.time().'", "yes", "no")'))
{
?>
<div class="message">Le message a bien &eacute;t&eacute; envoy&eacute;.<br />
<a href="/www/messagerie/list_message_mp.php">Liste de mes messages priv&eacute;s</a></div>
<?php
$form = false;
}
else
{
//Sinon, on dit quune erreur sest produite
$error = 'Une erreur c\'est produite lors de l\'envoi du message.';
}
}
else
{
//Sinon, on dit quil ne peut pas envoyer un message a lui meme
$error = 'Vous ne pouvez pas envoyer un message &agrave; vous m&ecirc;me.';
}
}
else
{
//Sinon, on dit que le destinataire nexiste pas
$error = 'Le destinataire de votre message n\'existe pas.';
}
}
else
{
//Sinon on dit quun champ nest pas rempli
$error = 'Un des champs n\'est pas rempli.';
}
}
elseif(isset($_GET['recip']))
{
//On recupere le nom dutilisateur si disponible
$orecip = $_GET['recip'];
}
if($form)
{
//On affiche lerreur sil ya lieu
if(isset($error))
{
echo '<div class="message">'.$error.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<h1>Nouveau message priv&eacute;</h1>
<form action="new_message_mp.php" method="post">
Veuillez remplir ce formulaire pour envoyer le MP.<br />
<label for="title">Titre</label><input type="text" value="<?php echo htmlentities($otitle, ENT_QUOTES, 'UTF-8'); ?>" id="title" name="title" /><br />
<label for="recip">Destinataire<span class="small">(Nom d'utilisateur)</span></label><input type="text" value="<?php echo htmlentities($orecip, ENT_QUOTES, 'UTF-8'); ?>" id="recip" name="recip" /><br />
<label for="message">Message</label><textarea cols="40" rows="5" id="message" name="message"><?php echo htmlentities($omessage, ENT_QUOTES, 'UTF-8'); ?></textarea><br />
<input type="submit" value="Envoyer" />
</form>
</div>
<?php
}
}
else
{
echo '<div class="message">Vous devez &ecirc;tre connect&eacute; pour acc&eacute;der &agrave; cette page.</div>';
}
?>
<div class="foot"><a href="/www/messagerie/list_message_mp.php">Retour &agrave; mes messages priv&eacute;s</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
</body>
</html>


SVP aidé moi

Pages: 1