JeuWeb (JeuPHP) - Crée ton jeu par navigateur

Version complète : [Résolu] Messagerie interne
Vous consultez actuellement la version basse qualité d'un document. Voir la version complète avec le bon formatage.
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">
    &nbsp;&nbsp;Pseudo: 
    </td>
    <td>
    <input type="text" value="'
.$env['username'].'" name="pseudo" size="60">
    </td>
    </tr>
    <tr>
    <td width="100">
    &nbsp;&nbsp;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 ??
Donne nous ton message d'erreur 16
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
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
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
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
C'est bon j'ai trouver l'erreur34
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é
Moi je dirais, short open tag a off

Met <?php a la place du <? de d"part :/
URLs de référence