Commentaires non affichés apres envoi

Fermé
psykotik - 9 oct. 2009 à 19:34
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 - 9 oct. 2009 à 23:17
Bonjour,
Cet apres midi grace a un memebre de ce forum ( druidou59 pour pas le citer ^^ ) j ai reussi a installer mon script mini-chat sur ma page internet donc tout est bien affiché le mini chat a exactement l aspect que je voulais mais nouveau probleme quand on poste un commentaire .... ben rien ne se passe il n est affiché nul part quelqu un aurai une idée sur le probleme avec le script ?
merci

10 réponses

graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 975
9 oct. 2009 à 20:48
Oui
0
lol d accord merci mais plus exactement ? parce que j avou que la ca m avance pas enormement
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 975
9 oct. 2009 à 20:52
Ben ta question non plus sans le code, mais j' attendais que tu fasses simplement la remarque.
0
tu n'as pas tort . voila le code :
<?php
include('./includes/includes.inc.php');

define('SUP_ENTREE', 1); // Remplacé 0 par 1 si vous voulez supprimer les N dernières entrées
$n = 50; // Nombres d'entrées à supprimées lorsque le nombre d'entrées max est atteint
$nb_max = 150; // Nombre d'entrées max
$longueur_message = 120; // La taille du message (caractères maximum)
$nmpp = 8; // Nombres de messages par pages

$sql_ret = "SELECT COUNT(*) AS nb_post FROM minichat";
$retour = mysql_query($sql_ret, $link) or die(mysql_error());
$data_Post = mysql_fetch_array($retour);
$totalPost = $data_Post['nb_post'];
$nombreDePages = ceil($totalPost / $nmpp);

if (isset($_POST['pseudo'], $_POST['message'])) // Si les variables existent
{
  if (!empty($_POST['pseudo']) && !empty($_POST['message'])) // Si on a quelque chose à enregistrer
  {
    if (empty($_POST['info'])) // le $_POST['info'] est une ruse pour les spammeurs
    {
      if (strlen($_POST['message']) < $longueur_message) // Si le message ne dépasse pas la taille autorisée
      {
        // On utilise les fonctions PHP mysql_real_escape_string pour la sécurité
        $pseudo = trim(mysql_real_escape_string(utf8_decode($_POST['pseudo'])));
        $message = mysql_real_escape_string(utf8_decode($_POST['message']));
        $time = time();
 
        // Ensuite on enregistre le message
        $sql = "INSERT INTO minichat VALUES('', '".$pseudo."', '".$message."', '".$time."')";
        $insert = mysql_query($sql, $link) or die(mysql_error());

        if($insert == TRUE)
        {
          header('Location: minichat.php');
        }
        else
        {
          header('Location: minichat.php?erreur=send');
        }
        
        mysql_free_result($insert);
      }
      else
      {
        header('Location: minichat.php?erreur=solong');
      }
    }
    else
    {
      header('Location: minichat.php?erreur=spam');
    }
  }
  else
  {
    header('Location: minichat.php?erreur=vide');
  }
}
else
{ 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <?php echo utf8_encode('<title>Mini-chat (Démo)</title>'); ?>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        
        <script type="text/javascript">
        function addText(instext) {
        var mess = document.mess.message;
        //IE support
        if (document.selection) {
            mess.focus();
            sel = document.selection.createRange();
            sel.text = instext;
            document.guestbook.focus();
        }
        //MOZILLA/NETSCAPE support
        else if (mess.selectionStart || mess.selectionStart == "0") {
            var startPos = mess.selectionStart;
            var endPos = mess.selectionEnd;
            var chaine = mess.value;

            mess.value = chaine.substring(0, startPos) + instext + chaine.substring(endPos, chaine.length);

            mess.selectionStart = startPos + instext.length;
            mess.selectionEnd = endPos + instext.length;
            mess.focus();
        } else {
            mess.value += instext;
            mess.focus();
            }
        }
        </script>
        
        <style type="text/css">
        body
        {
          width: 86%;
          margin-top: 16px;
          margin-right: 64px;
          margin-bottom: 32px;
          margin-left: 64px;
          background-color: grey;
        }
    
        .chat
        {
          width: 55%;
          margin-left: 32px;
          margin-top: 16px;
          font-size: 11px;
          font-family: Verdana, Arial, "Times New Roman", Sans-Serif;
          text-align: left;
          border-style: dashed;
          border-width: 1px;
          padding: 10px;
          background-color: grey;
        }
    
        .erreur
        {
          font-family: Verdana, Arial, "Times New Roman", Sans-Serif;
          font-size: 13px;
          text-align: left;
          color: red;
        }
    
        h3
        {
          text-align: center;
        }
        
        #smileys 
        {
          margin: 2px;
        }
        
        .souligne 
        {
          text-decoration: underline;
        }
        
        .input 
        {
          display: none;
        }
        </style>
    </head>
    <body>
   
<?php
}

// On supprime les entrées supérieur à N Si SUP_ENTREE est défini à 1
if(SUP_ENTREE == 1)
{
  $sql_d = "SELECT COUNT(*) AS nb_entrees FROM minichat";
  $res_d = mysql_query($sql_d, $link) or die(mysql_error()); 
  $data = mysql_fetch_array($res_d);

  if ($data['nb_entrees'] > $nb_max)
  {
		$sql_d2 = "DELETE FROM minichat ORDER BY id LIMIT ".$n;
		$res_d2 = mysql_query($sql_d2, $link)or die(mysql_error());
		mysql_free_result($res_d2); 
  }
}

$url = trim(strip_tags($_SERVER['REQUEST_URI']));
$url = ereg_replace('/', ' ', $url);
$uri = explode('=', $url);
//$uri_final = explode('.', $uri[2]);
$p = $uri_final[1];

if (isset($_GET['p']) && !empty($_GET['p']) && intval($p) <= intval($nombreDePages))
{
	$page = intval($_GET['p']);  
}
else 
{
  $page = 1; 
}

$ppaa = ($page - 1) * intval($nmpp);
$ppaa = mysql_real_escape_string($ppaa);

// Maintenant on doit récupérer les N dernières entrées de la table
// On utilise la requête suivante pour récupérer les N derniers messages :

$sql_rep = "SELECT pseudo, message, time FROM minichat ORDER BY time DESC LIMIT " . $ppaa . ", " . $nmpp;
$reponse = mysql_query($sql_rep, $link) or die(mysql_error());

echo utf8_encode('<div class="chat"><h3>Bienvenue sur le MiniChat (Démo)</h3>');

if(mysql_num_rows($reponse) > 0)
{

  // Gestion des erreurs
  if(isset($_GET['erreur']) && $_GET['erreur'] == 'vide')
  {
    echo utf8_encode('<p class="erreur">Un ou plusieurs champs sont restés vides.</p>');
  }

  if(isset($_GET['erreur']) && $_GET['erreur'] == 'send')
  {
    echo utf8_encode('<p class="erreur">Une erreur est survenue lors de l\'envoi du message.</p>');
  }

  if(isset($_GET['erreur']) && $_GET['erreur'] == 'solong')
  {
    echo utf8_encode('<p class="erreur">Le message dépasse la taille autorisée de '.$longueur_message.' caractères</p>');
  }
  
  if(isset($_GET['erreur']) && $_GET['erreur'] == 'spam')
  {
    echo utf8_encode('<p class="erreur">Les spammeurs n\'ont rien à faire ici.</p>');
  }

  // Puis on fait une boucle pour afficher tous les résultats :
  while ($donnees = mysql_fetch_array($reponse))
  {
    echo utf8_encode('<b>'.$donnees['pseudo'].'</b> a écrit le <span style="color:green;font-size:10px;font-style:italic;">'.date('d/m/Y à H\hi', $donnees['time']).'</span> : <br/>'.stripslashes(controle($donnees['message'])));
    echo '<br/><br/>';
  }

// Fin de la boucle, le script est terminé !
}
else
{
  echo utf8_encode('<p class="erreur">Il n\'y a encore aucun message d\'envoyé dans le minichat.</p>');
}

mysql_free_result($reponse);

$i = intval($i);
echo '<p>Page : ';
echo get_list_page($page, $nombreDePages, './minichat.php');

?> 
<h5>Postez un message:</h5>
<form method="post" action="minichat.php" name="mess">
<div id="smileys">
  <a onclick="addText(' :O ');return(false)"><img src="./images/1.gif" border="0" alt="" /></a>
  <a onclick="addText(' ^^ ');return(false)"><img src="./images/2.gif" border="0" alt="" /></a>
  <a onclick="addText(' lol ');return(false)"><img src="./images/3.gif" border="0" alt="" /></a>
  <a onclick="addText(' o_O ');return(false)"><img src="./images/4.gif" border="0" alt="" /></a>
  <a onclick="addText(' ;) ');return(false)"><img src="./images/5.gif" border="0" alt="" /></a>
  <a onclick="addText(' :p ');return(false)"><img src="./images/6.gif" border="0" alt="" /></a>
  <a onclick="addText(' :( ');return(false)"><img src="./images/23.gif" border="0" alt="" /></a>
  <a onclick="addText(' O_O ');return(false)"><img src="./images/19.gif" border="0" alt="" /></a>
  <a href="#" onclick="addText('[b]/b');return(false)"><b style="text-decoration:none;">G</b></a>
  <a href="#" onclick="addText('[i]/i');return(false)"><i style="text-decoration:none;">i</i></a>
  <a href="#" onclick="addText('[s]/s');return(false)"><u style="text-decoration:none;">s</u></a>
</div>

<table border="0" cellpadding="1" cellspacing="1">
<tr>
<td>Pseudo :</td> <td><input type="text" name="pseudo" size="20" maxlength="20" /></td></tr>
<tr>
<td>Message :</td> <td><textarea name="message" cols="50" rows="7" ></textarea></td></tr>
<tr><td><input class="input" type="text" name="info" /></td></tr>
<tr>
<td colspan="3" align="center"><input type="submit" value="Envoyer" /></td></tr>

</table>
<a href="javascript:window.document.mess.submit()"></a>
</form></div>
 
</body>
</html>

<?php
// On se déconnecte de MySQL
mysql_close($link);
?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 975
9 oct. 2009 à 20:58
pffff t' es dur la, met juste le code concerné pas tout ton site!
0
ben c'est juste le script du mini chat ca et l'erreur est là dedans a mon avis mais aucune idées d'où elle est ...
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 975
9 oct. 2009 à 21:43
Mais copie et montre nous l' erreur!!!!!!!!!
0
comment tu veux que je copie quelque chose qui devrai apparaitre mais ne le fais pas ... au mieux je peux te faire voir le resultat en t envoyant sur le site et mettre un commentaire dans le minichat tu verra ce qui ce produit .... rien et l erreur si je savait où elle etait dans le code j aurai pas besoin de demander de l'aide ^^
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
9 oct. 2009 à 22:47
Est-ce que les données sont enregistrées dans la base de données ?
Pour vérifier → PhpMyAdmin ou une requête pour compter le nombre d'entrées.
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 975
9 oct. 2009 à 23:17
Arf ca doit etre la fatigue, j' aurai juré que tu m' avais parlé d' une erreur, mille excuses!
0