Bonjour à tous.
Voila, j'ai encore un tout petit problème avec jquery. Je vous explique mon problème.
J'ai un formulaire afin que les visiteurs laissent des commentaires. Ce formulaire doit fonctionner en parallèle avec la méthode jquery $.ajax
Voici mon formulaire:
Ce formulaire est présent à dans une url du type:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <div id="formulairecom"> <h4 id="formulairecommentaire">Ajoute ton commentaire</h4> <div id="formulairecommentairebox"> <form action="../../ajoutcommentaire.php" name="formulaire" method="post"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr><td width="50%">Pseudo : *</td><td><input type="text" name="pseudo" id="pseudo" style="width:250px;"/></td></tr> <tr><td width="50%">E-Mail : *</td><td><input type="text" name="mail" id="mail" style="width:250px;"/></td></tr> <tr><td width="50%">MSN :</td><td><input type="text" name="msn" id="msn" style="width:250px;"/></td></tr> <tr><td width="50%">Site internet :</td><td><input type="text" name="siteinternet" id="siteinternet" value="http://" style="width:250px;"/></td></tr> <tr><td width="50%">Blog :</td><td><input type="text" name="blog" id="blog" value="http://" style="width:250px;"/></td></tr> <tr><td width="50%">Note : *</td><td><select name="note" id="note"><option value="5" selected="selected">5</option><option value="4">4</option><option value="3">3</option><option value="2">2</option><option value="1">1</option><option value="0">0</option></select></td></tr> <tr><td width="50%">Commentaire : *</td><td><textarea name="commentaire" id="commentaire" style="width:250px;height:100px;" cols="50" rows="10"></textarea></td></tr> <tr><td colspan="2"> <div style="display:none;">Ne pas compléter : <input type="text" name="name" id="name" /></div></td></tr> <tr><td colspan="2"> <input type="hidden" name="id_actu" id="id_actu" value="<?php echo $sql1['id_actu']; ?>" /></td></tr> <tr><td colspan="2"> <input type="hidden" name="titre_actu" id="titre_actu" value="<?php echo $sql1['titreurl']; ?>" /></td></tr> <tr> <td colspan="2" align="center"> <input type="submit" name="enregistrement" id="ajoutcom" value="Envoyer un message" /> </td> </tr> </table> </form> </div> </div>
http://domaine/article/titre_article/index.html
La fonction $.ajax utilisé est celle ci dessous.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 $(document).ready(function() { $("#formulairecommentairebox").submit( function(event) { event.preventDefault(); // empêche le traitement par défaut de l'évenement }); // //Lorsque on clique sur le bouton submit présent dans le div id="formnewsletter" faire .... $("#ajoutcom").submit(function() { //recuperation de la valeur qui de l'id #adresse var pseudonyme = $("#pseudo").val(); var adressemail = $("#mail").val(); var adressemsn = $("#msn").val(); var site_internet = $("#siteinternet").val(); var adresseblog = $("#blog").val(); var notation = $("#note").val(); var comment = $("#commentaire").val(); var num_actu = $("#id_actu").val(); var nom = $("#name").val(); var enregistremt = $("#ajoutcom").val(); //regex pour vérifier synthaxe adresse mail mailvalide = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ; if(mail != '' && mail.search(mailvalide) == -1) { $("#formnewsletter").html("Entrez une adresse mail valide<form action=\"newsletter.php\" method=\"post\">Tape ton adresse mail:<input type=\"text\" name=\"adresse\" id=\"adresse\"/><input type=\"submit\" value=\"S'inscrire\"/></form>"); return false; } else { //lancement de la requete ajax pour envoyer l'adresse dans le fichier newsletter.php qui enregistrera les nouveaux abonnés $.ajax({ url: '../../ajoutcommentaire.php', type: 'POST', data: 'pseudo=' + pseudonyme + '&mail=' + adressemail + '&msn=' + adressemsn + '&siteinternet=' + site_internet + '&blog=' + adresseblog + '¬e=' + notation + '&commentaire=' + comment + '&id_actu=' + num_actu + '&nam=' + nom + '&enregistrement=' + enregistremt, success: function (data) { //renvoie du message pour confirmer ou infirmer l'inscription $("#formulairecommentairebox").html(data); //document.getElementById("formnewsletter").innerHTML=data; } }); return false; } }); });
La page "ajoutcommentaire.php" est la page php contenant les requetes sql et le php permettant l'ajout d'un commentaire. Cette page est présente à l'adresse:
http://domaine/ajoutcommentaire.php
Le problème que j'ai, est que l'exécution via $.ajax ne fonctionne pas. Et je ne vois pas du tout pourquoi. Enfin je pense qu'il doit y avoir une erreur au niveau de la mise en place de toutes les valeurs en méthode post.
Quelqu'un pourrait-il m'aider? N'hésitez pas à me demander des informations supplémentaires pour m'apporter de l'aide.
Partager