Button formulaire à requête ajax

Résolu/Fermé
BaptisteDebes Messages postés 90 Date d'inscription mardi 8 mai 2012 Statut Membre Dernière intervention 14 octobre 2013 - 17 sept. 2012 à 22:30
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 19 sept. 2012 à 18:53
Bonjour j'ai ce code qui doit à partir d''un formulaire envoyé des données par une requête ajax sur une page de traitement qui elle fonctionne c'est ce code qui me pose problème car je pense être loin de ma solution je pense quand regardant le code on le comprend merci d'avance.



<form name="jack_post">
<input type="text" name="message" cols="49" rows="10" value=""><br />
<input type="button" name="go2" value="Envoyer les informations" onClick="jack_script()">
</form>

<?php
if (isset($_POST['go2']))
{
?>
<script type="text/javascript">
//ligne ci dessous des que la page est finie de charger on lance une premiere fois la focntion rafraichissement pour charger les messages
$(document).ready(function() {jack_script();});
function jack_script(){


//voici la fonction rafraichissement

//elle fait appel a jquery
//on definit les parametres ajax
// le type => POST ou GET
//le script php appelé
//la fonction qui va traiter la réponse lorsqu'elle va arriver: div_reponse c'est l'id du div dans lequel ça va ecrire data
//SetTimeout c'est la tempo qui relance le rafaichissement a intervales réguliers 5 sec ici
$.ajax({
type: "POST",
url:"<?php echo 'jack_post.php?id='.$id.'&msg='.$_POST['message'].'';?>",



success:function(data) {
$('#').html(data);

}
});
};

//attention il y avait qqs erreurs d'accolades lignes ci dessus

</script>
<?php };?>

5 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 sept. 2012 à 09:23
une chose que tu n'as pas comprise:
le but de Ajax est d'appel un script sur le serveur SANS recharger la page
hors toi tu as mis le scrip javascript Ajax /Jquery sous condition $_POST du bouton donc au rechargement de la page, et le bouton etant de type "button" le formulaire n'est pas envoyé au serveur
de plus il te manquait des arguments dans la balise <form

<head>
<!-- ligne ci dessous tu fait le lien vers la biblioteque jquery que tu as téléchargée et mise sur ton site -->
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
//ligne ci dessous des que la page est finie de charger on lance une premiere fois la focntion rafraichissement pour charger les messages
$(document).ready(function() {jack_script();});
function jack_script(){


//voici la fonction rafraichissement

//elle fait appel a jquery
//on definit les parametres ajax
// le type => POST ou GET
//le script php appelé
//la fonction qui va traiter la réponse lorsqu'elle va arriver: div_reponse c'est l'id du div dans lequel ça va ecrire data
//SetTimeout c'est la tempo qui relance le rafaichissement a intervales réguliers 5 sec ici
$.ajax({
type: "POST",
url:"<?php echo 'jack_post.php?id='.$id.'&msg='.$_POST['message'].'';?>",



success:function(data) {
$('#').html(data);

}
});
};

//attention il y avait qqs erreurs d'accolades lignes ci dessus

</script>
</head>

<form name="jack_post" action="" method="post">
<input type="text" name="message" cols="49" rows="10" value=""><br />
<input type="button" name="go2" value="Envoyer les informations" onClick="jack_script()">
</form>


0
BaptisteDebes Messages postés 90 Date d'inscription mardi 8 mai 2012 Statut Membre Dernière intervention 14 octobre 2013
18 sept. 2012 à 13:13
Bonjour désolé ça ne marche pas pourtant j'ai bien choisi l'adresse de la bibliothèque jquery et la page de traitement fonctionne donc je suis un peux perdu merci.

Cordialement

Baptiste Debes
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 sept. 2012 à 13:52
sans le code de ta page on est un peu perdu aussi
0
BaptisteDebes Messages postés 90 Date d'inscription mardi 8 mai 2012 Statut Membre Dernière intervention 14 octobre 2013
19 sept. 2012 à 15:03
Je pense avoir trouvé le problème le bouton était un button mais maintenant en submit et hors des balises <head> cela fonctionne sauf que la page se rafraichi et je ne veux pas que tous se recharge ainsi
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
19 sept. 2012 à 18:53
cela fonctionne sauf que la page se rafraichi et je ne veux pas que tous se recharge ainsi

et avec le bouton submit le formulaire est envoyé donc

si la page se rafraichit tu ne fais pas de l'Ajax.

donnes moi le code de ta page en MP
et que veux tu faire exactement ? envoyer et enregistrer un message sur ton forum, ou rafraichir les messages a intervalles réguliers ?
0