Page 1 sur 1

Utiliser JSON pour mes formulaires AJAX

Posté : 29 nov. 2013, 03:40
par nico44530
Bonjour,

J'ai une page d'articles, tous les articles sont associés à un formulaire de commentaire en ajax.
Le problème c'est que l'ajax ne s’exécute qu'au premier article.

Je pense que la résolution du problème c'est d'utiliser le format JSON ?
Le problème c'est que je ne sais pas comment faire, j'ai regardé sur internet, et ce qu'il propose est très différent par rapport à mon code :

[javascript]

$('#inputCom<?php echo $statut['statut_id']; ?>').keypress(function(e){
if(e.which == 13){
var coms_text = $('input[name=coms_text]').val();
var coms_statutid = $('input[name=coms_statutid]').val();
var coms_userid = $('input[name=coms_userid]').val();
var dataString = 'coms_text='+coms_text+'&coms_statutid='+coms_statutid+'&coms_userid='+coms_userid;
$.ajax({
type: 'POST',
async : false,
url: 'http://home.web-astronomie.fr/addcom.php',
data: dataString,
success: function(data){
$('.comment<?php echo $statut['statut_id']; ?>').append(data);
$('#inputCom<?php echo $statut['statut_id']; ?>').attr('value','');
}
});
return false;
e.preventDefault();
}
});
[/javascript]
Si vous pouvez m'expliquer comment mon code peut s'adapter au format JSON ?
Merci d'avance ;)

Re: Utiliser JSON pour mes formulaires AJAX

Posté : 05 déc. 2013, 23:26
par Aureusms
Tu envoi ton AJAX en mode POST ce qui est bien dans ton cas. Par contre tu transferts tes données dans une "string" ce qui ne sert à rien car le mode post te permet de passer de sparamètres en mode "tableau" :

[javascript]$('#inputCom<?php echo $statut['statut_id']; ?>').keypress(function(e){
e.preventDefault();
if(e.which == 13){
$.ajax({
type: 'POST',
async : false,
url: 'http://home.web-astronomie.fr/addcom.php',
data: {"coms_text" : $('input[name=coms_text]').val(), "coms_statutid" : $('input[name=coms_statutid]').val(), "coms_userid" : $('input[name=coms_userid]').val() },
success: function(data){
$('.comment<?php echo $statut['statut_id']; ?>').append(data);
$('#inputCom<?php echo $statut['statut_id']; ?>').attr('value','');
}
});
}
});[/javascript]

Ensuite dans ta page http://home.web-astronomie.fr/addcom.php tu pourras intérroger la Super Variable $_POST via
echo $_POST["coms_text"];
echo $_POST["coms_statutid"];
...