moriane
Membre
Messages : 18
Inscription : Oct 2008
Réputation : 0
|
[Résolu] Messagerie interne
Bonjour,j'ai une messagerie interne sur mon site et quand je veux envoyer un message sa me met un code d'erreur de 3 pages.Est ce que quelqu'un pourrait m'aider svp ??
Voici le script de la messagerie: <?
Code PHP :
################################################################################# ## Mod Messagerie ## Dévellopé par Tsunami <http://zfusion.free.fr/illusion/> ## Le 20 Janvier 2005 ## Inclut envoi et réception, statut(lu,non lu, archivé), gestion(suppression, modification..) des messages #################################################################################
// Inclusion des fichiers neccessaires au script include('lib.php'); include('cookies.php');
opendb();
// Informations du joueur $userrow = checkcookies();
$doex = explode(':', $_GET['do']);
if($_GET['do'] == "Reception") { $messtitle = 'Boîte de réception'; } elseif($doex[0] == "Envoi") { $messtitle = 'Envoyer un message'; } elseif($_GET['do'] == "Archives") { $messtitle = 'Archives'; } elseif($doex[0] == "Lect") { $messtitle = 'Lire un message'; } elseif($doex[0] == "Read") // lire un message archivé { $messtitle = 'Lire un message'; } elseif($doex[0] == "Suppr") { $messtitle = 'Supprimer un message'; } elseif($doex[0] == "Archiver") { $messtitle = 'Archiver un message'; } elseif($doex[0] == "Envoi") { $messtitle = 'Boîte d\'envoi'; } else { $messtitle = 'Boîte de réception'; }
// Affichage du titre de la messagerie $page = '<table cellspacing="0" cellpadding="0" height="40" width="90%" align="center"> <img src="images/messagerie.jpg"> <tr> <td background="images/bg_1.1.png" width="6"> </td> <td width="98%" background="images/bg_1.2.png"> <center> <b>'.$messtitle.'</b> <br /> <a href="?do=Archives" alt="Archives">Archives</a> - <a href="?do=Benvoi">Boîte d\'envoi</a>/<a href="?do=Reception">réception</a> - <a href="?do=Envoi">Envoyer un message</a></center> </td> <td background="images/bg_1.3.png" width="6"> </td> <tr> </table>';
if(empty($_GET['do'])) { header("location: ?do=Reception"); }
if($_GET['do'] == 'Reception' || empty($_GET['do'])) {
// Lister les messages dont le destinataire est l'utilisateur $msglist = doquery("SELECT * FROM {{table}} WHERE destinataire='$userrow[id]' AND statut!='Archivé' ORDER BY date DESC","msg");
$page .= '<table width="90%" align="center"><tr><td width="30%"><b>Titre</b></td><td width="20%"><b>Envoyeur</td><td width="30%"><center><b>Date</td><td width="20%"><center><b>Actions</td></tr>'; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); if($msg['statut'] == "Non lu") { $attributecolor = 'style="color:red;"'; } $date = date("j/m/Y à G:i",$msg['date']); $page .= '<tr><td><a '.$attributecolor.' href="?do=Lect:'.$msg['id'].'">'.$msg['titre'].'</a></td><td>'.$env['username'].'</td><td>'.$date.'</td><td><center><a href="?do=Suppr:'.$msg['id'].'"><img border="0" src="images/msg_delete.gif" alt="S" /> <a href="?do=Archiver:'.$msg['id'].'"><img border="0" src="images/msg_archiv.gif" alt="- A" /></td></tr>'; } $page .= '</table>'; $page .= '<br /><br /><a href="?do=Suppr:All"><img style="float:left;" border="0" src="images/msg_delete.gif" alt="Supprimer tout">Supprimer tout les messages</a>'; } elseif($doex[0] == 'Lect') { $msg1 = doquery("SELECT * FROM {{table}} WHERE id='$doex[1]' AND destinataire='$userrow[id]'","msg"); $msg = mysql_fetch_assoc($msg1); if($msg['statut'] == "Non lu") { $update = doquery("UPDATE {{table}} SET statut='Lu' WHERE id='$msg[id]' AND destinataire='$userrow[id]'","msg"); } $date = date("j/m/Y à G:i",$msg['date']); $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); $page .= '<table width="80%" align="center"><tr><td><b>'.$msg['titre'].'</b></td><td width="40%">- '.$date.'<br /> - '.$env['username'].'</td></tr> <tr> <td colspan="2" style="border:1px black dotted;padding:10px;" height="200"> '.nl2br(stripslashes($msg['message'])).' </td> </tr> </table>'; $page .= '<br /><br /><center>[<a href="?do=Envoi:'.$msg['id'].'">Répondre à ce message</a> - <a href="?do=Suppr:'.$msg['id'].'">Supprimer</a> - <a href="?do=Archiver:'.$msg['id'].'">Archiver</a>]'; } elseif($doex[0] == 'Read') { $msg1 = doquery("SELECT * FROM {{table}} WHERE id='$doex[1]' AND envoyeur='$userrow[id]'","msg"); $msg = mysql_fetch_assoc($msg1); $date = date("j/m/Y à G:i",$msg['date']); $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[destinataire]'","users"); $env = mysql_fetch_assoc($env); $page .= '<table width="80%" align="center"><tr><td><b>'.$msg['titre'].'</b></td><td width="40%">- '.$date.'<br /> - A '.$env['username'].'</td></tr> <tr> <td colspan="2" style="border:1px black dotted;padding:10px;" height="200"> '.nl2br(stripslashes($msg['message'])).' </td> </tr> </table>'; $page .= '<br /><br /><center>[<a href="?do=Envoi:'.$msg['id'].'">Répondre à ce message</a> - <a href="?do=Suppr:'.$msg['id'].'">Supprimer</a>]'; } elseif($doex[0] == "Envoi") { if(empty($_POST['message']) || empty($_POST['pseudo']) || empty($_POST['titre'])) { if(isset($doex[1])) { $infen = doquery("SELECT envoyeur,titre FROM {{table}} WHERE id='$doex[1]'","msg"); $infen = mysql_fetch_assoc($infen); $env = doquery("SELECT username FROM {{table}} WHERE id='$infen[envoyeur]'","users"); $env = mysql_fetch_assoc($env); (substr_count($infen['titre'],'Re:' ) == 0) ? $pre = 'Re: ' : $pre = ''; } $page .= '<form method="post"><table align="center" width="80%"> <tr> <td width="100"> Pseudo: </td> <td> <input type="text" value="'.$env['username'].'" name="pseudo" size="60"> </td> </tr> <tr> <td width="100"> Titre: </td> <td> <input type="text" name="titre" value="'.$pre.$infen['titre'].'" size="60"> </td> </tr> <tr> <td colspan="2"> <textarea name="message" cols="50" rows="10"></textarea> </td> </tr> <tr> <td colspan="2"> <center><input type="submit" value="Poster" /></center> </td> </tr> </table></form>'; } else { $ide = doquery("SELECT id FROM {{table}} WHERE username='$_POST[pseudo]'","users"); $error = 0; if(mysql_num_rows($ide) == 0) { $page .= '<center>Le joueur indiqué n\'existe pas.'; $error++; } $ide = mysql_fetch_assoc($ide); $ides = $ide['id']; $message = addslashes($_POST['message']); $time = time(); if($error == 0) { doquery("INSERT INTO {{table}} ( `id` , `titre` , `message` , `date` , `envoyeur` , `destinataire` , `statut` ) VALUES('', '$_POST[titre]', '$message', '$time', '$userrow[id]', '$ides', 'Non lu')","msg"); $page .= '<center><br />Votre message pour '.$_POST['pseudo'].' a bien été envoyé à la poste.<br /><br /><a href="messagerie.php">Boite de réception</a>'; } } } elseif($doex[0] == "Suppr") { if($doex[1] == "All") { doquery("DELETE FROM {{table}} WHERE destinataire='$userrow[id]' AND statut!='Archivé'","msg"); $page .= '<center><br />Tous les messages présents dans votre boîte de réception ont étés supprimés.<br /><br /><a href="?do=Reception">Boîte de réception</a>'; } else { doquery("DELETE FROM {{table}} WHERE destinataire='$userrow[id]' AND id='$doex[1]'","msg"); $page .= '<center><br />Ce message présent dans votre boîte de réception a été supprimé.<br /><br /><a href="?do=Reception">Boîte de réception</a>'; } } elseif($doex[0] == "Archiver") { $nbar = doquery("SELECT id FROM {{table}} WHERE statut='Archivé'","msg"); $nbar = mysql_num_rows($nbar); if($nbar >= 25) // 25 :: nombre max d'éléments archivés { $page .= '<center>Désolé, mais vous avez atteind le nombre maximum de lettres archivées.<br /><br /><a href="?do=Reception">Boîte de réception</a>'; } elseif($doex[1] == "All") { doquery("UPDATE {{table}} SET statut='Archivé' WHERE statut!='Archivé' AND destinataire='$userrow[id]'","msg"); $page .= '<center><br />Tous les messages présents dans votre boîte de réception ont étés archivés.<br /><br /><a href="?do=Reception">Boîte de réception</a>'; } else { doquery("UPDATE {{table}} SET statut='Archivé' WHERE statut!='Archivé' AND destinataire='$userrow[id]' AND id='$doex[1]'","msg"); $page .= '<center><br />Ce message présent dans votre boîte de réception a été archivé.<br /><br /><a href="?do=Reception">Boîte de réception</a>'; } } elseif($doex[0] == "Archives") {
// Lister les messages dont le destinataire est l'utilisateur $msglist = doquery("SELECT * FROM {{table}} WHERE destinataire='$userrow[id]' AND statut='Archivé' ORDER BY date DESC","msg");
$page .= '<table width="90%" align="center"><tr><td width="30%"><b>Titre</b></td><td width="20%"><b>Envoyeur</td><td width="30%"><center><b>Date</td><td width="20%"><center><b>Actions</td></tr>'; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); $date = date("j/m/Y à G:i",$msg['date']); $page .= '<tr><td><a href="?do=Read:'.$msg['id'].'">'.$msg['titre'].'</a></td><td>'.$env['username'].'</td><td>'.$date.'</td><td><center><a href="?do=Suppr:'.$msg['id'].'"><img border="0" src="images/msg_delete.gif" alt="S" /></td></tr>'; } $page .= '</table>'; } elseif($doex[0] == "Benvoi") // Boite d'envoi - messages envoyés { // Lister les messages dont l'nvoyeur est le membre $msglist = doquery("SELECT * FROM {{table}} WHERE envoyeur='$userrow[id]' AND statut='Non lu' ORDER BY date DESC","msg");
$page .= '<table width="90%" align="center"><tr><td width="30%"><b>Titre</b></td><td width="20%"><b>Envoyeur</td><td width="30%"><center><b>Date</td><td width="20%"><center><b>Actions</td></tr>'; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[destinataire]'","users"); $env = mysql_fetch_assoc($env); $date = date("j/m/Y à G:i",$msg['date']); $page .= '<tr><td><a href="?do=Lect:'.$msg['id'].'">'.$msg['titre'].'</a></td><td>'.$env['destinataire'].'</td><td>'.$date.'</td><td><center><a href="?do=Suppr:'.$msg['id'].'"><img border="0" src="images/msg_delete.gif" alt="S" /> <a href="?do=Archiver:'.$msg['id'].'"><img border="0" src="images/msg_archiv.gif" alt="- A" /></td></tr>'; } $page .= '</table>'; $page .= '<br /><br /><a href="?do=Suppr:All"><img style="float:left;" border="0" src="images/msg_delete.gif" alt="Supprimer tout">Supprimer tout les messages</a>'; } display($page,"Messagerie");
Est ce que quelqu'un pourrait m'aider svp ??
(Ce message a été modifié le : 10-29-2008 04:11 PM par Sephi-Chan.)
|
|
| 10-29-2008 02:04 PM |
|
Kassak
Membre
Messages : 824
Inscription : Aug 2006
Réputation : 5
|
RE: messagerie interne
Donne nous ton message d'erreur
Il est pas magnifique ce sol?
|
|
| 10-29-2008 02:07 PM |
|
moriane
Membre
Messages : 18
Inscription : Oct 2008
Réputation : 0
|
RE: messagerie interne
ok le voici:
Code :
## Le 20 Janvier 2005 ## Inclut envoi et réception, statut(lu,non lu, archivé), gestion(suppression, modification..) des messages ################################################################################# // Inclusion des fichiers neccessaires au script include('lib.php'); include('cookies.php'); opendb(); // Informations du joueur $userrow = checkcookies(); $doex = explode(':', $_GET['do']); if($_GET['do'] == "Reception") { $messtitle = 'Boîte de réception'; } elseif($doex[0] == "Envoi") { $messtitle = 'Envoyer un message'; } elseif($_GET['do'] == "Archives") { $messtitle = 'Archives'; } elseif($doex[0] == "Lect") { $messtitle = 'Lire un message'; } elseif($doex[0] == "Read") // lire un message archivé { $messtitle = 'Lire un message'; } elseif($doex[0] == "Suppr") { $messtitle = 'Supprimer un message'; } elseif($doex[0] == "Archiver") { $messtitle = 'Archiver un message'; } elseif($doex[0] == "Envoi") { $messtitle = 'Boîte d\'envoi'; } else { $messtitle = 'Boîte de réception'; } // Affichage du titre de la messagerie $page = '
'.$messtitle.'
Archives - Boîte d\'envoi/réception - Envoyer un message
'; if(empty($_GET['do'])) { header("location: ?do=Reception"); } if($_GET['do'] == 'Reception' || empty($_GET['do'])) { // Lister les messages dont le destinataire est l'utilisateur $msglist = doquery("SELECT * FROM {{table}} WHERE destinataire='$userrow[id]' AND statut!='Archivé' ORDER BY date DESC","msg"); $page .= ''; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); if($msg['statut'] == "Non lu") { $attributecolor = 'style="color:red;"'; } $date = date("j/m/Y à G:i",$msg['date']); $page .= ''; } $page .= '
Titre Envoyeur
Date
Actions
'.$msg['titre'].' '.$env['username'].' '.$date.'
S - A
'; $page .= '
Supprimer toutSupprimer tout les messages'; } elseif($doex[0] == 'Lect') { $msg1 = doquery("SELECT * FROM {{table}} WHERE id='$doex[1]' AND destinataire='$userrow[id]'","msg"); $msg = mysql_fetch_assoc($msg1); if($msg['statut'] == "Non lu") { $update = doquery("UPDATE {{table}} SET statut='Lu' WHERE id='$msg[id]' AND destinataire='$userrow[id]'","msg"); } $date = date("j/m/Y à G:i",$msg['date']); $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); $page .= '
'.$msg['titre'].' - '.$date.'
- '.$env['username'].'
'.nl2br(stripslashes($msg['message'])).'
'; $page .= '
[Répondre à ce message - Supprimer - Archiver]'; } elseif($doex[0] == 'Read') { $msg1 = doquery("SELECT * FROM {{table}} WHERE id='$doex[1]' AND envoyeur='$userrow[id]'","msg"); $msg = mysql_fetch_assoc($msg1); $date = date("j/m/Y à G:i",$msg['date']); $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[destinataire]'","users"); $env = mysql_fetch_assoc($env); $page .= '
'.$msg['titre'].' - '.$date.'
- A '.$env['username'].'
'.nl2br(stripslashes($msg['message'])).'
'; $page .= '
[Répondre à ce message - Supprimer]'; } elseif($doex[0] == "Envoi") { if(empty($_POST['message']) || empty($_POST['pseudo']) || empty($_POST['titre'])) { if(isset($doex[1])) { $infen = doquery("SELECT envoyeur,titre FROM {{table}} WHERE id='$doex[1]'","msg"); $infen = mysql_fetch_assoc($infen); $env = doquery("SELECT username FROM {{table}} WHERE id='$infen[envoyeur]'","users"); $env = mysql_fetch_assoc($env); (substr_count($infen['titre'],'Re:' ) == 0) ? $pre = 'Re: ' : $pre = ''; } $page .= '
Pseudo:
Titre:
'; } else { $ide = doquery("SELECT id FROM {{table}} WHERE username='$_POST[pseudo]'","users"); $error = 0; if(mysql_num_rows($ide) == 0) { $page .= '
Le joueur indiqué n\'existe pas.'; $error++; } $ide = mysql_fetch_assoc($ide); $ides = $ide['id']; $message = addslashes($_POST['message']); $time = time(); if($error == 0) { doquery("INSERT INTO {{table}} ( `id` , `titre` , `message` , `date` , `envoyeur` , `destinataire` , `statut` ) VALUES('', '$_POST[titre]', '$message', '$time', '$userrow[id]', '$ides', 'Non lu')","msg"); $page .= '
Votre message pour '.$_POST['pseudo'].' a bien été envoyé à la poste.
Boite de réception'; } } } elseif($doex[0] == "Suppr") { if($doex[1] == "All") { doquery("DELETE FROM {{table}} WHERE destinataire='$userrow[id]' AND statut!='Archivé'","msg"); $page .= '
Tous les messages présents dans votre boîte de réception ont étés supprimés.
Boîte de réception'; } else { doquery("DELETE FROM {{table}} WHERE destinataire='$userrow[id]' AND id='$doex[1]'","msg"); $page .= '
Ce message présent dans votre boîte de réception a été supprimé.
Boîte de réception'; } } elseif($doex[0] == "Archiver") { $nbar = doquery("SELECT id FROM {{table}} WHERE statut='Archivé'","msg"); $nbar = mysql_num_rows($nbar); if($nbar >= 25) // 25 :: nombre max d'éléments archivés { $page .= '
Désolé, mais vous avez atteind le nombre maximum de lettres archivées.
Boîte de réception'; } elseif($doex[1] == "All") { doquery("UPDATE {{table}} SET statut='Archivé' WHERE statut!='Archivé' AND destinataire='$userrow[id]'","msg"); $page .= '
Tous les messages présents dans votre boîte de réception ont étés archivés.
Boîte de réception'; } else { doquery("UPDATE {{table}} SET statut='Archivé' WHERE statut!='Archivé' AND destinataire='$userrow[id]' AND id='$doex[1]'","msg"); $page .= '
Ce message présent dans votre boîte de réception a été archivé.
Boîte de réception'; } } elseif($doex[0] == "Archives") { // Lister les messages dont le destinataire est l'utilisateur $msglist = doquery("SELECT * FROM {{table}} WHERE destinataire='$userrow[id]' AND statut='Archivé' ORDER BY date DESC","msg"); $page .= ''; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[envoyeur]'","users"); $env = mysql_fetch_assoc($env); $date = date("j/m/Y à G:i",$msg['date']); $page .= ''; } $page .= '
Titre Envoyeur
Date
Actions
'.$msg['titre'].' '.$env['username'].' '.$date.'
S
'; } elseif($doex[0] == "Benvoi") // Boite d'envoi - messages envoyés { // Lister les messages dont l'nvoyeur est le membre $msglist = doquery("SELECT * FROM {{table}} WHERE envoyeur='$userrow[id]' AND statut='Non lu' ORDER BY date DESC","msg"); $page .= ''; while($msg = mysql_fetch_assoc($msglist)) { $env = doquery("SELECT username FROM {{table}} WHERE id='$msg[destinataire]'","users"); $env = mysql_fetch_assoc($env); $date = date("j/m/Y à G:i",$msg['date']); $page .= ''; } $page .= '
Titre Envoyeur
Date
Actions
'.$msg['titre'].' '.$env['destinataire'].' '.$date.'
S - A
'; $page .= '
Supprimer toutSupprimer tout les messages'; } display($page,"Messagerie");
Svp aider moi
(Ce message a été modifié le : 10-29-2008 02:37 PM par moriane.)
|
|
| 10-29-2008 02:15 PM |
|
pascal
Membre
Messages : 676
Inscription : Aug 2006
Réputation : 14
|
RE: messagerie interne
le PHP n'est pas interprété.
Pour qu'un script PHP fonctionne, il faut avoir un serveur web, comme apache. WAMP ou easyPHP utilisent apache et s'installent assez facilement.
ce script, ça serait pas du RPG Illusion ?
A+
Pascal
Bonnes pratiques SQL - Passer à la POO
présentation
|
|
| 10-29-2008 02:37 PM |
|
moriane
Membre
Messages : 18
Inscription : Oct 2008
Réputation : 0
|
RE: messagerie interne
non c pas rpgillusion c'est animrpg.Le script est actuelement sur un serveur et ne marche pas .Je vois pas ce que tu veux me dire
|
|
| 10-29-2008 02:40 PM |
|
pascal
Membre
Messages : 676
Inscription : Aug 2006
Réputation : 14
|
RE: messagerie interne
merci pour l'info.
le message d'erreur c'est le script tel quel. ça veut dire que le PHP n'est pas interprété, sinon on aurait des trucs affichés à l'écran, comme des formulaires. le "bug" peut venir du nom du fichier, il faut une extension ".php" .
tu vas devoir apprendre les bases du développement web je pense.
A+
Pascal
Bonnes pratiques SQL - Passer à la POO
présentation
|
|
| 10-29-2008 02:48 PM |
|
moriane
Membre
Messages : 18
Inscription : Oct 2008
Réputation : 0
|
RE: messagerie interne
C'est bon j'ai trouver l'erreur
|
|
| 10-29-2008 03:25 PM |
|
keke
Modérateur
    
Messages : 1,163
Inscription : Mar 2007
Réputation : 18
|
RE: [Résolu] Messagerie interne
Heu ... Moriane, y'a de bons tuto sur comment configurer son serveur APACHE.
Je suis persuadé que tu as pris la config de base ... Y aller à tatton va, en plus d'énerver les membres de ce forum, te prendre du temps et rien t'apprendre d'utile.
Bonne journée !
kéké
Kéké
Administrateur du jeu médiéval http://www.magdales.com
Papa depuis 18 mois. Modérateur de jeuPHP .
En préparation pour ses congés de Noël ... kéké moins actif pendant les congé
|
|
| 10-29-2008 04:31 PM |
|
Eluox
Membre
Messages : 935
Inscription : Oct 2007
Réputation : 8
|
RE: [Résolu] Messagerie interne
Moi je dirais, short open tag a off
Met <?php a la place du <? de d"part :/
|
|
| 10-29-2008 06:12 PM |
|