Depuis hier, je suis le tuto pour créer un tchat en php/ajax, cependant j'ai un souci que je n'arrive pas à résoudre vu que je ne connais presque pas ajax( je débute)
Voici mes codes:
fichier tchat_post.php :
if($_POST'action'] == 'getMessages'){
$lastid=floor($lastid);
$repp = $bdd->query('SELECT * FROM tchat WHERE id >'.$lastid .' ORDER BY date asc');
$d'result']="";
$d'lastid'] = $lastid;
if($rep != NULL)
{
while($data=$repp->fetch())
{
$d'result'] .= '<p>'.$data'pseudo'] .' le '.$data'date']. '<br/>'.htmlentities($data'message']).'</p>';
$d'lastid'] = $data'id'];
}
$d'erreur']='ok';
}
}
echo json_encode($d);
fichier tchat.php:
<div id="tchatmessage"><?php
$rep_tchat = $bdd->query('SELECT * FROM tchat ORDER by date desc LIMIT 15');
if($rep_tchat != NULL)
{
while( $tchat = $rep_tchat ->fetch())
{
$t] = $tchat;
}
for($i=count($t)-1;$i>=0;$i--)
{
echo '<p>'.$t$i]'pseudo'] .' le '.$t$i]'date']. '<br/>'.htmlentities($t$i]'message']).'</p>';
}
}
?>
</div>
<div id="tchatForm" >
<form method="post" action="" >
<label>Connecté en tant que <?php echo $_SESSION'pseudo'];?></label><br/>
<a href="deconnecter_tchat.php">Se déconnecter du Tchat</a>
<label>Message: <textarea name="message" id="message"></textarea></label>
<input type="submit" value="Envoyer" id="post"/>
</form>
</div>
Et tchat.js:
var url ="tchat_post.php";
var lastid=0;
var timer = setInterval(getMessages,10000);
function getMessages(){
$.post(url,{action:"getMessages",lastid:lastid},function(data){
if(data.erreur=="ok")
{
alert('ok get');
}
else
{
alert('erreur');
}
hideLoader();
},"json");
}
Donc mon souci est que lorsque j'ajoute un message il ne s'affiche pas automatiquement( il faut que je recharge la page pour le voir), et j'ai également rémarqué en mettant des alerts dans tchat.js que ne 'rentre' pas dans la fonction après le $.post Et je n'arrive pas à comprendre pourquoi :/
Merci d'avance, bonne fin de journée
Lia23
var timer = setInterval(getMessages(),10000);
dans le fichiers tchat.js en ligne 3
il manquerai bien les parenthése
Bonsoir,
Merci pour votre réponse mais malheureusement ça change rien il n'y a toujours pas les messages qui s'affiche lorsqu'en j'en ajoute un
Lia723
Bonjour,
Moi non plus :/ Mais il doit bien en avoir une quelque part sinon ça marcherait :(((
Cordialement
bonsoir
met en avant la ligne 5
alert("test get message");
met en ligne 6
alert("test post");
pourvoir ou tu trouve sur ton prg
Bonsoir flo3376,
Je l'ai déjà fait (pas avec le même texte hein mais ça a pas d'importance) Et il me met bien le "test get message" mais pas le "test post"
Merci et bonne soirée
aurai tu un lien par hasard? car là comme ça je ne vois pas, hormis une nom réponse de tchat_post.php.
Bonjour,
Non, j'ai pas de lien :/
Comment je peux tester tchat_post.php pour qu'il m'affiche ce qu'il envoie ?
Cordialement