Système de rafraichissement auto

WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -  
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous !

Je suis nouveau sur CCM car je cherche une réponse à ma question depuis bien longtemps mais je ne trouve nul part ce qu'il me faut réellement !

J'ai créé un Tchat.
En voici le code

chat.php :


?php
session_start();
if(!isset($_SESSION['login']) || empty($_SESSION['login'])){
header("location:../../index.html");
}
include "connect.php";

?>

<html>
<head>
<title>NetDead~Tchat en ligne</title>
<link rel="stylesheet" href="design.css" />
</head>
<body>
<div id="Header">
<p><h2>Vous êtes connecté(e) en tant que : <?php echo $_SESSION['login']; ?></h2></p>
</div>
<div id="tchat">
<?php
$sql = "SELECT * FROM messages ORDER BY id DESC LIMIT 12"; //On récupère les 15 derniers messages dans la table Messages de la DataBase.
$req = mysql_query($sql) or die(mysql_error());
$d = array();
while($data = mysql_fetch_assoc($req)){
$d[] = $data;
}
for($i = count($d)-1;$i>=0;$i--)
{

?>
<p><strong>[<?php echo $d[$i]["date"]; ?>] <?php echo htmlspecialchars($d[$i]["pseudo"]); ?></strong> : <?php echo htmlspecialchars($d[$i]["message"]); ?></p> <!-- On affiche les données récupérées sur la DataBase -->
<?php
}
?>

</div>
<div id="tchatForm">
<div align="center">
<form method="post" action="traite.php">
<input type="text" name="message" style="width:70%;" >
<input type="submit" value="Envoyer">
<input type="button" value="Actualiser" Onclick="javascript:window.history.go(0)" style="postion:absolute; top:3px; right: 3px;">

</div>
</form>
</div>
</body>
</html>

Je pense que mon fichier traite.php peut vous intéresser :


<?php
session_start();
if(!isset($_SESSION['login']) || empty($_SESSION['login'])){
header("location:../../index.html");
}
// Connexion à la base de données

try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=BDD', 'root', '', $pdo_options);

//récupération des valeurs des champs:
//Le Pseudo:
$pseudo = $_SESSION['login'] ;
//Le Message:
$message = $_POST["message"] ;
//date:
$heure = date("H:i");
//IP du client:
$ip = $_SERVER["REMOTE_ADDR"];

//création de la requête SQL:
$req = $bdd->prepare('INSERT INTO messages(pseudo, message, date, ip) VALUES(:pseudo, :message, :date, :ip)');
$req->execute(array(
'pseudo' => $pseudo,
'message' => $message,
'date' => $heure,
'ip' => $ip
));

// Redirection du visiteur vers la page du minichat
header('Location: chat.php');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>

Ce Tchat est dans un espace membre dont le pseudo correspond à ça : $_SESSION['login']

Il marche parfaitement bien mais pour qu'il soit finit il me faudrait un script qui me permette de rafraichir toutes les 2 secondes (par exemple) les messages que les membres envoie.
Je ne v eux pas en revanche que ce soit la page en elle_même qui s'actualise automatiquement mais juste le script.

Merci de votre aide :/
A voir également:

3 réponses

kevin76110 Messages postés 4273 Date d'inscription   Statut Membre Dernière intervention   875
 
Hello,

Je ne saurais te donner le script en question, mais vois du côté du JavaSript et ses bibliothèque ( comme JQuery).
0
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
D'accord, merci du conseil :)
0
WebLooser Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   7
 
Ah je crois que j'ai trouvé ;D
0