|  
 Membre | Salut, je vous offres un petit code de 4 page, gestion. vision, sauvegarde et chargement.. pour un t-chat gerer en temp reel avec une fichier .txt comme une base de donner... nous utilisons mysqli en orienter object pour gerer lidentification du membre etc..  vous pouvez changer les choses. Je vous offre se script car je ne l'aurai plus besion donc si sa peut aider quelque  
 Créer 4 fichier
 - 3chat.txt
 -chat1.php
 -chat.php
 - le dernier c pour votre espace membre.. donc choisisser le nom que vous voulez et meter le dans le repertoire de votre administration..
 
 Fichier de chargement et envoie pour le .txt appeller ici chat1.php
 
 <?phperror_reporting(0);
 session_start();
 
 if(empty($_SESSION['pseudo'])){die();}
 
 $mysqli = new mysqli("localhost", "username", "motdepasse", "basededonner");
 if (mysqli_connect_errno()) {
 printf("Échec de la connexion : %s\n", mysqli_connect_error());
 exit();
 }
 
 function montre($a){
 $insert['msg'] =  htmlspecialchars(strip_tags($a));
 $datafucked = $insert['msg'];
 $datafucked = html_entity_decode($datafucked);
 // ici on met les bbcodes par exemple..
 $datafucked = str_replace("\\n","<br>", $datafucked);
 $datafucked = str_replace("[r]","<br>", $datafucked);
 return $datafucked;
 }
 function secure($f,$mysqli){
 return $mysqli->real_escape_string($f);
 }
 
 // identifie le membre.. ici c'est $_SESSION['pseudo'] a changer selon vos besion ainsi que la requete ..
 $p = $mysqli->query("SELECT * FROM players WHERE id='".$_SESSION['pseudo']."'");
 $players = $p->fetch_array();
 
 if(empty($_GET['mp'])){
 function chat(){
 $chat = '';
 $tableau = file("./3chat.txt" );
 $count = count($tableau);
 $page = floor($count/15);
 if($_GET["a"] > 1){
 $a = $count;
 $count = $count - (($_GET["a"]-1)*15);
 $ca = $count - 15;
 if($_GET["a"] > $page){$count =15; $ca = 0;}
 } else {
 $chat .= '<table class="tableau" width="90%"><tr><th>Date/Joueur</th><th>Message</th></tr>';
 $ca = $count - 15;}
 for ($i = $ca;$i <= ($count-1); $i++){
 $b = explode("|",$tableau[$i]);
 if($b[2] == 0){
 $mytime = date("d/m H:i:s",$b[3]);
 if(!empty($b[0])){
 $chat .= "<tr><td>";
 // changer ici profil?id= pour votre page ou il y a la presentation de votre membre par exemple...
 $chat .= '<a href="profil?id='.$b[4].'-'.$b[0].'" class="username">'.montre($b[0]).'</a><br />';
 $chat .= "<span>".$mytime."</span></td><td>";
 
 $chat .= "".montre($b[1])."";
 $chat .= "</td></tr>";}
 }
 }
 $chat .= "</table>";
 return $chat;
 }
 
 ?>
 
 <?php
 
 echo chat();
 }
 else {
 // changer $players['username'] pour le champ qui affiche le pseudo du membre..
 $url = $players['username'];
 $sitename= $_GET['mp'];
 $mp = "".$url."|".$sitename."|0|".time()."|".$players['id']."\n";
 $fichier_texte = fopen('./3chat.txt', 'a');
 fwrite($fichier_texte,$mp);
 fclose($fichier_texte);
 
 }
 $mysqli->close();
 ?>
 chat.php
 
 <script type="text/javascript">function showHint()
 {
 if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
 else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
 xmlhttp.onreadystatechange=function()
 {
 if (xmlhttp.readyState==4 && xmlhttp.status==200)
 {
 document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
 }
 }
 xmlhttp.open("GET","chat1.php",true);
 xmlhttp.send();
 }
 showHint();
 </script>
 
 <script type="text/javascript">
 function showHint1()
 {
 var str = document.getElementById("withdraw").value;
 
 if (str.length==0)
 {
 document.getElementById("txtHint").innerHTML="";
 return;
 }
 if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
 else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
 xmlhttp.onreadystatechange=function()
 {
 if (xmlhttp.readyState==4 && xmlhttp.status==200)
 {
 document.getElementById("txtHint1").innerHTML=xmlhttp.responseText;
 }
 }
 xmlhttp.open("GET","chat1.php?mp="+str,true);
 xmlhttp.send();
 document.getElementById("withdraw").value = "";
 showHint();
 
 }
 showHint();
 var int=self.setInterval(function(){showHint()},10000);
 </script>
 
 
 
 <span id="txtHint"></span><br />
 <form action="#" method="post">
 <center>
 <textarea  name="withdraw" id="withdraw"></textarea><br />
 <input type="submit" class="btn" value="Send" name="send" onclick="showHint1(); return false;" />
 </center>
 </form>
 et le code pour votre page d'aministration..
 
  <?php
 if(isset($_POST['id']) && preg_match("/^[0-9]+$/",$_POST['id'])){
 
 $tableau = file("../3chat.txt" );
 $count = count($tableau);
 $a = $_POST['id'];
 for ($i = 0;$i <= $count; $i++){
 if($i == $a){
 $b = explode("|",$tableau[$i]);
 if($b[2] == 0){
 $n .= "".$b[0]."|".$b[1]."|1|".$b[3]."";
 }
 else {
 $n .= "".$b[0]."|".$b[1]."|0|".$b[3]."";
 }
 }
 else {
 $n .=$tableau[$i];
 }
 
 }
 
 $fichier_texte = fopen('../3chat.txt', 'w+');
 fwrite($fichier_texte,$n);
 fclose($fichier_texte);
 }
 
 function chat(){
 $chat = '';
 $tableau = file("../3chat.txt" );
 $count = count($tableau);
 $page = floor($count/15);
 if($_GET["a"] > 1){
 $a = $count;
 $count = $count - (($_GET["a"]-1)*15);
 $ca = $count - 15;
 if($_GET["a"] > $page){$count =15; $ca = 0;}
 } else {
 $chat .= '<table class="tableau" width="100%"><tr><th>Date/Joueur</th><th>Message</th><th>Action</th></tr>';
 $ca = $count - 15;}
 for ($i = $ca;$i <= ($count-1); $i++){
 $b = explode("|",$tableau[$i]);
 $mytime = date("d/m H:i:s",$b[3]);
 if(!empty($b[0])){
 $chat .= "<tr><td>";
 $chat .= '<a href="profil.php?id='.$b[4].'&u='.$b[0].'" class="username">'.montre($b[0]).'</a><br />';
 $chat .= "<span>".$mytime."</span></td><td>";
 
 $chat .= "".montre($b[1])."";
 $chat .= "</td><td>";}
 $nbligne = $nbligne +1;
 if($b[2] == 0){$chat .= '<form method="post" action="" name="'.$nbligne.'" id="'.$nbligne.'">
 <input type="hidden" name="id" value="'.$i.'">
 </form><img width=32 height=32 onclick="document['.$nbligne.'].submit()" src=../valid.png />';}
 else {
 $chat .= '<form method="post" action="" name="'.$nbligne.'">
 <input type="hidden" name="id" value="'.$i.'">
 </form><img width=32 height=32 onclick="document['.$nbligne.'].submit()" src=../error.png />';
 }
 
 }
 $chat .= "</td></tr></table>";
 return $chat;
 }
 
 echo chat();
 ?>
et a inserer dans le repertoire principal du site.. c'est 2 image
 https://bazinio.ca/admin/images/valid.png
 https://bazinio.ca/admin/images/error.png
 
 
 https://guerredesgangs.net & http://www.bazinio.ca & http://www.thestreet2.ca | 
											
											
												|  
 Membre | Le fichier de gestion vous permet d'afficher ou masquer des messages comme les spams ou autre.. il est possible de l'optimiser  
 
 https://guerredesgangs.net & http://www.bazinio.ca & http://www.thestreet2.ca | 
											
											
												|  
 Membre | Et sur la page 3chat.txt tu mets quel code ???? 
 
 |