par
pacphil » 28 févr. 2016, 13:23
Bonjour voilà j'ai un petit soucis avec l'envois de donnée en ajax vers ma base de donnée d'un chat?
voilà le script que j'ai réalisé mais cela ne fonction pas sauf pour la lecture une petite aide serais la bienvenue .
<? session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Tchat - <?PHP echo $_SESSION['pseudo_chat'] ; ?> </title>
<link type="text/css" rel="stylesheet" href="style.css" />
</head>
<div id="wrapper">
<div id="menu">
<p class="welcome">Welcome, <b><?php echo $_SESSION['pseudo_chat']; ?></b></p>
<p class="logout"><a id="exit" href="#">Exit Chat</a></p>
<div style="clear:both"></div>
</div>
<div id="chatbox"></div>
<form name="connexion_chat" id="connexion_chat" action="#">
<input name="usermsg" type="hidden" id="usermsg" value="<?php echo $_SESSION['pseudo_chat']; ?>" size="63" />
<input name="message" type="text" id="message" size="63" />
<input name="submitmsg" type="submit" id="submitmsg" value="Send" />
</form>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
// jQuery Document
$(document).ready( function () {
$("#connexion_chat").submit( function() { // à la soumission du formulaire
$.ajax({ // fonction permettant de faire de l'ajax
type: "POST", // methode de transmission des données au fichier php
url: "post.php", // url du fichier php
data: "usermsg="+$("#usermsg").val()+"&message="+$("#message").val(), // données à transmettre
});
return false; // permet de rester sur la même page à la soumission du formulaire
});
//Load the file containing the chat log
function loadLog(){
var oldscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
$.ajax({
url: "tchat_lu.php",
cache: false,
success: function(html){
$("#chatbox").html(html); //Insert chat log into the #chatbox div
var newscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
if(newscrollHeight > oldscrollHeight){
$("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal'); //Autoscroll to bottom of div
}
},
});
}
setInterval (loadLog, 2500); //Reload file every 2.5 seconds
});
</script>
</body>
</html>
le code php
<?
session_start();
// Une petite fonction qui allège un peu les codes du traitement d'un formulaire. Elle sert ici plus d'exemple qu'autre chose.
require("function.php");
$connection = connexion_db ();
// Le traitement du formulaire d'ajout d'un message.
if(isset($_POST['usermsg'], $_POST['message'])) // Si le formulaire est envoyé.
{
if(!empty($_POST['usermsg']) AND !empty($_POST['message'])) // Si tous les champs ont été remplis correctement.
{
$pseudo_chat =($_POST['usermsg']); // Regardez un peu plus haut pour la fonction.
$message =($_POST['message']);
$messa=array(':pseudo_chat'=> $pseudo_chat,':message'=> $message,':date'=> time());
$values_messa = join(', ',array_keys($messa));
$req_messa=$connection->query( 'INSERT INTO messages_chat ('.str_replace(':','',$values_messa).') VALUES('.$values_messa.')' );
$req_messa->execute($messa);
}
else // Si le visiteur n'a pas correctement saisi tous les champs, alors on le lui indique.
{
echo '<strong>Erreur : vous n\'avez pas correctement saisi les champs obligatoires.</strong>' ;
}
}
?>
Bonjour voilà j'ai un petit soucis avec l'envois de donnée en ajax vers ma base de donnée d'un chat?
voilà le script que j'ai réalisé mais cela ne fonction pas sauf pour la lecture une petite aide serais la bienvenue .
[html]<? session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Tchat - <?PHP echo $_SESSION['pseudo_chat'] ; ?> </title>
<link type="text/css" rel="stylesheet" href="style.css" />
</head>
<div id="wrapper">
<div id="menu">
<p class="welcome">Welcome, <b><?php echo $_SESSION['pseudo_chat']; ?></b></p>
<p class="logout"><a id="exit" href="#">Exit Chat</a></p>
<div style="clear:both"></div>
</div>
<div id="chatbox"></div>
<form name="connexion_chat" id="connexion_chat" action="#">
<input name="usermsg" type="hidden" id="usermsg" value="<?php echo $_SESSION['pseudo_chat']; ?>" size="63" />
<input name="message" type="text" id="message" size="63" />
<input name="submitmsg" type="submit" id="submitmsg" value="Send" />
</form>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
// jQuery Document
$(document).ready( function () {
$("#connexion_chat").submit( function() { // à la soumission du formulaire
$.ajax({ // fonction permettant de faire de l'ajax
type: "POST", // methode de transmission des données au fichier php
url: "post.php", // url du fichier php
data: "usermsg="+$("#usermsg").val()+"&message="+$("#message").val(), // données à transmettre
});
return false; // permet de rester sur la même page à la soumission du formulaire
});
//Load the file containing the chat log
function loadLog(){
var oldscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
$.ajax({
url: "tchat_lu.php",
cache: false,
success: function(html){
$("#chatbox").html(html); //Insert chat log into the #chatbox div
var newscrollHeight = $("#chatbox").attr("scrollHeight") - 20;
if(newscrollHeight > oldscrollHeight){
$("#chatbox").animate({ scrollTop: newscrollHeight }, 'normal'); //Autoscroll to bottom of div
}
},
});
}
setInterval (loadLog, 2500); //Reload file every 2.5 seconds
});
</script>
</body>
</html>[/html]
le code php
[php]<?
session_start();
// Une petite fonction qui allège un peu les codes du traitement d'un formulaire. Elle sert ici plus d'exemple qu'autre chose.
require("function.php");
$connection = connexion_db ();
// Le traitement du formulaire d'ajout d'un message.
if(isset($_POST['usermsg'], $_POST['message'])) // Si le formulaire est envoyé.
{
if(!empty($_POST['usermsg']) AND !empty($_POST['message'])) // Si tous les champs ont été remplis correctement.
{
$pseudo_chat =($_POST['usermsg']); // Regardez un peu plus haut pour la fonction.
$message =($_POST['message']);
$messa=array(':pseudo_chat'=> $pseudo_chat,':message'=> $message,':date'=> time());
$values_messa = join(', ',array_keys($messa));
$req_messa=$connection->query( 'INSERT INTO messages_chat ('.str_replace(':','',$values_messa).') VALUES('.$values_messa.')' );
$req_messa->execute($messa);
}
else // Si le visiteur n'a pas correctement saisi tous les champs, alors on le lui indique.
{
echo '<strong>Erreur : vous n\'avez pas correctement saisi les champs obligatoires.</strong>' ;
}
}
?>[/php]