Bonjour,
j'ai un problème que je n'arrive pas à résoudre :
j'ai essayé de faire un chat
la connection à la base donnée est bonne
et l'affichage aussi, le problème est dans l'insertion du message dans la table du BDD
voilà mon code:
index.php
<?php
session_start();
if(isset($_GET['id_membre']))
{
$_SESSION['id_membre']= (int)$_GET['id_membre'];
}else{
$_SESSION['id_membre']=0;
}
echo $_SESSION['id_membre'];
?>
<!DOCTYPE html>
<html>
<head>
<title>Chat</title>
<script src='http://code.jquery.com/jquery-1.11.1.min.js'></script>
<script src='js/chat.js'></script>
<script src='js/jquery-1.11.1.min.js'></script>
<link rel= 'stylesheet' href='css/style.css'>
<meta charset='utf-8'>
</head>
<body>
<div class="chat">
<div class="messages"></div>
<textarea class="entree" placeholder="Veiller saisir votre text ici (shift + Entrée pour un saut de ligne)!"></textarea>
</div>
</body>
</html>
connect.php :
<?php
try{
$connect= new PDO('mysql:host=localhost;dbname=chat','root','');
}catch(Exception $e)
{
die('impossible de se connecter a la base donnée'.$e->getMessage());
}
?>
chat.js :
function recup_msg()
{
$.post("recup_msg.php",function(data){
$('.chat .messages ').html(data);});
}
setInterval(recup_msg,2000);
recup_msg();
$(function envoi_msgs()
{
$('.chat .entree').keyup(function(e){
var messages = $('.chat .entree').val();
messages = $.trim(messages);
if(messages != "" && e.keyCode==13 && e.shiftKey==false)
{
$.post('envoi_msg.php',{messages:messages},function(){
recup_msg();
$(' .chat .entree').val('');
});
} });
})
recup_msg.php
<?php
require('connect.php');
$query=$connect->query("
SELECT
messages.id_membre,
messages.message_membre,
membres.id_membre,
membres.pseudo_membre
FROM messages
INNER JOIN membres ON membres.id_membre = messages.id_membre
ORDER BY temps
");
$messages= array();
while($rows= $query->fetch())
{
$messages[]= $rows;
}
foreach($messages as $message)
{
?>
<a href="#"><?php echo $message['pseudo_membre'];?></a>
<p><?php echo $message['message_membre']; ?></p>
<?php
}
?>
envoi_msg.php
<?php
session_start();
require('connect.php');
$messages = trim(htmlentities(mysql_real_espace_string($_POST['messages'])));
$query = $connect->query("
INSERT INTO messages(id_membre,message_membre) VALUES('{$_SESSION['id_membre']}','{$messages}')
");
?>
Merci de votre aide.
Afficher la suite