Insertion et d'affichage de données en php/ajax
salut .
j'utilise un code que j'essaie d'adapter mais ça fonctionne pas .
voici ce qui s'affiche :
Poster par :undefined
undefined
et je remarque qu'il n'y a pas d'insertion quand je poste mes données .
voici mes 2 pages :
new_message.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| <?php
if(isset($_GET['pseudo']));
$pseudo = $_GET['pseudo'];
echo $pseudo;
?>
<p> </p><p> </p><p> </p><p> </p><p> </p><p> </p>
<!DOCTYPE html>
<html>
<head>
<style>
#feedback {
display:none;
}
#loader {
display:none;
}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="functions/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
/*créer un evenement sur le formulaire*/
$('form').submit(function(){
var corps_message = $('#corps_message').val();
if(corps_message!=""){
$('#loader').show();
/*Commençont la partie AJAX*/
$.post("index.php?page=postNew_message",{corps_message:corps_message},function(data){
$('#feedback').after("<hr>Poster par :"+pseudo+"</br>"+corps_message+"</br>").show();
/*$('#feedback').append(data).show(); Remplacer par ce qui est just au dessus*/
$('#loader').hide();
$('#corps_message').attr('value','');
});
}
/*$('#feedback').text(username+""+message).show();*/
return false;
});
});
</script>
</head>
<body>
<div id="feedback"></div>
<p>
<?php
$q = mysql_query("
SELECT conversations.id_conversation,
conversations_messages.corps_message,
utilisteurs.pseudo,
utilisteurs.avatar,
conversations_messages.date_message
FROM conversations
LEFT JOIN conversations_messages ON conversations.id_conversation = conversations_messages.id_conversation
JOIN conversations_membres ON conversations.id_conversation = conversations_membres.id_conversation
JOIN utilisteurs ON utilisteurs.pseudo = conversations_messages.pseudo_exp
WHERE (conversations_membres.pseudo_dest = '".$_SESSION['pseudo']. "' AND conversations_messages.pseudo_exp = '".$pseudo. "')OR (conversations_membres.pseudo_dest = '".$pseudo. "' AND conversations_messages.pseudo_exp = '".$_SESSION['pseudo']. "' )
GROUP BY conversations.id_conversation
ORDER BY conversations_messages.date_message
") or die(mysql_error());
while($rows = mysql_fetch_assoc($q)){
//if($_SESSION['pseudo'] == $pseudo){
echo "<hr><div style='background-color:#FD5200;width:200px; '>Poster par :<strong>".$rows['pseudo']."</strong></div></br><div style='background-color:#E7E7E7;height:60px;text-align:left; '>".$rows['corps_message']."</div></br>";
}
//}
?>
</p>
<p> </p><p> </p><p> </p>
<form method="post" action="index.php?page=new_message">
<p><strong>Message</strong></p>
<textarea id="corps_message" rows="6" cols="100"></textarea></br></br>
<input type="submit" value="Poster" />
</form>
<div id="loader"><img src="images/loader.gif"></div>
<script src="css/jquery.js" ></script>
</body>
</html> |
et enfin postNew_message.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <?php
//if(isset($_GET['pseudo']));
//$pseudo = $_GET['pseudo'];
extract($_POST);
if(isset($_POST['corps_message']) ){
// declaration et securisation des variables
$corps_message = mysql_real_escape_string($_POST['corps_message']);
//$ladate = NOW();
mysql_query("
INSERT INTO conversations(id_conversation,sujet_conversation) VALUES('','')
") or die(mysql_error());
$id_conversation = mysql_insert_id();
mysql_query("
INSERT INTO conversations_messages(id_conversation,pseudo_exp,corps_message,date_message) VALUES('{$id_conversation}','{$_SESSION['pseudo']}','{$corps_message}',NOW())
") or die(mysql_error());
mysql_query("
INSERT INTO conversations_membres(id_conversation,pseudo_dest) VALUES ('{$id_conversation}','{$_GET['pseudo']}')
") or die(mysql_error());
}
?> |
probleme d'insersion et d'affichage de données en php/ajax
bonsoir . merci de m'avoir aidé.
j'ai vu mon erreur et ça marche . mais il se trouve que mon loader :
Code:
<div id="loader"><img src="images/loader.gif"></div>
n'arrte pas de tourner mais je valide le formulaire et le champ n'est pas vide .