Page 1 sur 1

Problème avec mon t-chat

Posté : 27 janv. 2009, 19:38
par Escudo
Bonsoir à tous et à toutes,

Je rencontre un gros problème avec mon t-chat que je souhaite mettre en ligne. Cependant ayant des connaissances en php je bloque à plusieurs niveaux.
Voici ce que je souhaite afficher :

Pour les membres :

Juste au dessus du t-chat :

Page précédente l Nouveau Sujet l Actualiser l Page suivante

Ensuite là on a le t-chat :

Lorsqu'il y a un nouveau sujet, un système de réponse est automatiquement crée.

Pour les modérateurs :

Juste au dessus du t-chat :

Page précédente l Nouveau Sujet l Actualiser l Page suivante

Mais ils peuvent également supprimer un sujet ou une réponse à l'aide ça : X

Pour les administrateurs :

Juste au dessus du t-chat :

Page précédente l Nouveau Sujet l Actualiser l Page suivante

Mais ils peuvent également supprimer un sujet ou une réponse à l'aide ça : X

Maintenant voici une capture d'écran d'un site de ce que je souhaite avoir à la fin :

Image

Et voici mon code php :

Code : Tout sélectionner

<?php include 'includes/connecter/haut.php' ?> <?php session_start(); $date = date('d/m/Y'); $heure = date('H:i:s'); if (!isset($_SESSION['login'])) { exit(); } // on inclut le fichier fonction.php require('includes/fonctions.php'); // Ont déclare la variable if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent { $_POST['pseudo'] = trim($_POST['pseudo']); // Si l'utilisateur a mis des espaces, on les supprime $_POST['message'] = trim ($_POST['message']); // Comme ça, ton système est plus performant... if (empty($_POST['message']) OR empty($_POST['pseudo'])) // Si c'est vide ! { echo 'Votre message ou votre pseudo est vide'; } else { // D'abord, on se connecte à MySQL $base = mysql_connect ('localhost', 'conquestworld', 'MON CODE'); mysql_select_db ('conquestworld', $base); $message = mysql_query("SELECT message FROM minichat ORDER BY id DESC 0,0"); // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On verifie si le message est égale if ($message == $donnees['message']) { echo ' Vous ne pouvez pas poster 2 messages identiques'; exit(); } else { // Ensuite on enregistre le message mysql_query("INSERT INTO minichat VALUES('', '".$pseudo."', '".$message."','".$date."','".$heure."')"); echo ' Le message a été envoyer.'; } } } ?> <p> <form action="t-chat.php" method="post"> <center><table border=1> <th width=450px> <br><br> <?php // Vérification pour modo $sql = 'SELECT `rang` FROM `membres` WHERE `login` = "' . mysql_escape_string($_SESSION['login']). '"'; $res = mysql_query($sql)or die(mysql_error()); // Requête SQL $data = mysql_fetch_assoc($res); $rang = $data['rang']; echo 'Pseudo : <br><input type="text" readonly="true" name="pseudo" value="'.htmlentities(trim($_SESSION['login'])).'" style="'; if ($rang == "administrateur") { echo 'color:#ff0000'; } else if ($rang == "moderateur") { echo 'color:#009114'; } else if ($rang == "membre") { echo 'color:#000000'; } echo ';" /><br><br>'; echo 'Message : <br><input type="text" name="message" id="message" style="'; if ($rang == "administrateur") { echo 'color:#ff0000'; } else if ($rang == "moderateur") { echo 'color:#009114'; } else if ($rang == "membre") { echo 'color:#000000'; } echo ';"/><br/><br/><input type="submit" value="Envoyer" />'; ?> </font> </form> </th> <th> <a href="popup.html" target="_blanc" onclick="window.open(this.href,'popup','height=500 , width=500 , location=no ,scrollbars=1');return false;">Codes smileys</a> </p> </th> </tr> <tr> <th width=450px> <?php // Maintenant on doit récupérer les 10 dernières entrées de la table // On utilise la requête suivante pour récupérer les 10 derniers messages : mysql_query("SELECT * FROM minichat WHERE chat.type='0' ORDER BY chat.id DESC LIMIT 0,10")or die(mysql_error()); // Puis on fait une boucle pour afficher tous les résultats : while ($donnees = mysql_fetch_array($reponse) ) { $message = emoticones(stripslashes($donnees['message'])); //Une fois que le joueur a crée un post on crée une fonction répondre : <a href="chat.php?a=message&type=1&<?php echo $donnees['id']; ?>">Répondre</a> ?> <p><strong><u> <?php // Vérification pour modo $sql = 'SELECT `rang` FROM `membres` WHERE `login` = "'. mysql_escape_string($_SESSION['login']).'"'; $res = mysql_query($sql)or die(mysql_error()); // Requête SQL $data = mysql_fetch_assoc($res); $rang = $data['rang']; echo ''; if ($rang == "administrateur") { echo '<balise style="color:#ff0000;">'. $donnees['pseudo'] .'</balise>'; } else if ($rang == "moderateur") { echo '<balise style="color:#009114;">'. $donnees['pseudo'] .'</balise>'; } else if ($rang == "membre") { echo '<balise style="color:#000000;">'. $donnees['pseudo'] .'</balise>'; } echo ''; ?> </strong></u> a dit :<br><br /> <?php // Vérification pour modo $sql = 'SELECT `rang` FROM `membres` WHERE `login` = "'. mysql_escape_string($_SESSION['login']).'"'; $res = mysql_query($sql)or die(mysql_error()); // Requête SQL $data = mysql_fetch_assoc($res); $rang = $data['rang']; echo ''; if ($rang == "administrateur") { echo '<balise style="color:#ff0000;">'. $message .'</balise>'; } else if ($rang == "moderateur") { echo '<balise style="color:#009114;">'. $message .'</balise>'; } else if ($rang == "membre") { echo '<balise style="color:#000000;">'. $message .'</balise>'; } echo ''; ?><br /> ______________<br> le <?php echo $donnees['date']; ?> à <?php echo $donnees['heure']; ?>.<br /> __________________________________________</p> <?php } // Fin de la boucle, le script est terminé ! // On se déconnecte de MySQL mysql_close(); ?> </th> </tr> </table> <br><br><br><br><br> <?php include 'includes/connecter/bas.php' ?>
De manière avoir cela lorsqu'on créer un sujet :

Image

Lorsqu'on répond :

Image

Je vous en remercie d'avance de votre aide (Oui cela fait beaucoup ^^ )

Passez une très bonne soirée.

Cordialement,

Escudo