Problème d'insertion à la base donnée

Fermé
salihou_dev Messages postés 6 Date d'inscription lundi 1 décembre 2014 Statut Membre Dernière intervention 19 février 2019 - 1 déc. 2014 à 03:38
funnycat Messages postés 153 Date d'inscription jeudi 12 février 2009 Statut Membre Dernière intervention 10 mars 2019 - 5 déc. 2014 à 17:58
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.

1 réponse

funnycat Messages postés 153 Date d'inscription jeudi 12 février 2009 Statut Membre Dernière intervention 10 mars 2019 65
5 déc. 2014 à 17:58
Bonjour.
Il faudrait essayer plusieurs test au niveau de la connexion et de l'envoi des données. Peut-être que ceci devrait résoudre votre problème :

$id_message = (isset($_SESSION['id_membre']) ? $_SESSION['id_membre'] : 0);
$query = $connect->query("
INSERT INTO messages(id_membre, message_membre) VALUES(".$id_message.",'".$messages."');
");


En espérant que cela vous aide.
Cordialement,
0