Créer un compte
Connexion

Cadeau Script t-chat en .txt avec gestion comme mysql en php

Pour créer et répondre aux sujets, vous devez être connecté.
Pages: 1
Auteur Message
blingcru
17/04/2013 à 01:28:39
blingcru
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
<?php
error_reporting(0);
session_start();

if(empty($_SESSION['pseudo'])){die();}

$mysqli = new mysqli("localhost", "username", "motdepasse", "basededonner");
if (mysqli_connect_errno()) {
    printf("&Eacute;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
blingcru
17/04/2013 à 01:30:18
blingcru
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
NicolasNicla
09/06/2013 à 17:16:19
NicolasNicla
Membre
Et sur la page 3chat.txt tu mets quel code ????

Testweb
14/07/2013 à 14:15:19
Testweb
Membre
répond svp

NicolasNicla
21/08/2013 à 15:19:18
NicolasNicla
Membre
oh répond SVP  :)

Pages: 1