Valider formulaire avec jquery dans un while php

Résolu/Fermé
aljegre12 Messages postés 6 Date d'inscription mardi 8 avril 2014 Statut Membre Dernière intervention 19 avril 2014 - Modifié par aljegre12 le 18/04/2014 à 21:56
aljegre12 Messages postés 6 Date d'inscription mardi 8 avril 2014 Statut Membre Dernière intervention 19 avril 2014 - 19 avril 2014 à 20:47
bonjour

j'ai un requette sql avec un boucle while pour m'affiche des information dans chaque message une formulaire d'accept ou refuse....

la requet :
// $oui = 'oui' ;
 
$reponse = $bdd->prepare('SELECT * FROM jobs WHERE admin = ?');
 
$reponse->execute(array($oui));
 
while($donnees = $reponse->fetch())
 
{
 
echo ' name '.$donnees['name'].'</br>
 
 <div id="bouttons_sous_msg">
 
 <form action="" methode ="" >
 
 <input type="hidden" name="id_ist_job" value="'.$id_ist_job.'" id="id_ist_job" />
 
 <input type="hidden" name="name_ist_job" value="'.$donnees['name'].'" id="name_ist_job" />
 
 <input type="hidden" name="adresse_user" value="a" id="adresse_user" />
 
 <input type="hidden" name="name_user" value="'.$_SESSION['name'].'" id="name_user" />
 
<input type="button" id="ajoute_au_liste" value="ajout dans list"  />
 
 </form></div> ';
 
} 

et j'ai un script pour valider le formulaire sans quiter la page
$(function() {
 
$('#ajoute_au_liste').click(function() {
 
    var id_ist_job = $('#id_ist_job').val();
 
var name_ist_job = $('#name_ist_job').val();
 
var adresse_user = $('#adresse_user').val();
 
var name_user = $('#name_user').val();
 
$.post('../../models/boite_poster/accept_added_istichara_job.php',{'id_ist_job':id_ist_job,'name_ist_job':name_ist_job,'adresse_user':adresse_user,'name_user':name_user});
 
});
 
});

ma problemme c'est quand la requette affiche les message avec leurs boutons le script jquery va toujours prend les valeurs de premier formulaire . exmpl : quand je choisis d'ajouter le 5eme travaille a ma liste(click sur bouton d'ajoute de 5eme message ),le script jquery n'isert past les infos au bdd ,mais si je choisis le premier travaille (clicck sur premier boutons 'ajoute' de premier message) tout marche bient (insertion au bdd et valeur exact)

autr fois j'essayer d'utiliser ajax avec se script ( je fait onclick="formulIP" dans le formualire ) :

function callScript ( scriptName, args )
{  
    var xhr_object = null;      
    // ### Construction de l'objet XMLHttpRequest selon le type de navigateur
    // Cas des navigateurs de type Netscape (Firefore, Conqueror, etc.)
    if(window.XMLHttpRequest)
         xhr_object = new XMLHttpRequest();
    // Cas du navigateur Internet Explorer
    else if(window.ActiveXObject)
         xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    // Cas des navigateurs ne comprenant pas cette technologie (anciens navigateurs)
    else
    {           // XMLHttpRequest non supporté par le navigateur
        alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
        return;
    }   
xhr_object.open("POST", scriptName, true);
/////////////////////////////////////////////////
xhr_object.onreadystatechange = function() {
         if(xhr_object.readyState == 4) {
              
            alert('bien'); 
         }
        return xhr_object.readyState;
    }  
////////////////////////////////////////////////   
    // XMLHttpRequest   
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");  
    //  Envoi de la requête
xhr_object.send(args);
}
function formulP ()
{// --- Récupération des paramètres nécessaire au script PHP
    var id_ist_job = document.getElementById("id_ist_job").value;
    var name_ist_job = document.getElementById("name_ist_job").value;
    var adresse_user = document.getElementById("adresse_user").value;
    var name_user = document.getElementById("name_user").value;
     
    var data = "id_ist_job=" + id_ist_job + "&name_ist_job=" + name_ist_job + "&adresse_user=" + adresse_user + "&name_user=" + name_user;
    // --- Appel au script PHP de traitement
    callScript("../../models/boite_poster/accept_added_istichara_job.php",data);
}

mais la presque la meme problemme, quand je choisie le travaille 4 ou 5 (formul 4 ou5) le script insert ou base de donnees toujours les valeur de premier formulaire et premier message

je trouve que les deux script toujours tombe sur la premier formulaire dans la page qui porte les id (id_ist_job,name_ist_job..)elle prend les id du premier formulaire et ses valeur et non pas la 5em ou 4em puisque c'est une seule formulaire qui répéter avec le boucle while alors des formulaire avec mêmes id et avec defferent valeur.

comment faire svp . + j'aimerai de faire 'hide' au formulaire que je choisie après le click

moi j'aime que j'utilise le script jquery

pardonner mois pour orthographe le français et pas ma langage
A voir également:

2 réponses

aljegre12 Messages postés 6 Date d'inscription mardi 8 avril 2014 Statut Membre Dernière intervention 19 avril 2014 2
19 avril 2014 à 00:07
merci pour la reponse
mais comment faire un id different ?
1
aljegre12 Messages postés 6 Date d'inscription mardi 8 avril 2014 Statut Membre Dernière intervention 19 avril 2014 2
19 avril 2014 à 20:47
cv
$(function() {
$('.ajoute_au_listex').click(function() {
  var $form = $(this).closest('form');
  var id_ist_job = $form.find('input[name="id_ist_job"]').val();
  var name_ist_job = $form.find('input[name="name_ist_job"]').val();
  var adresse_user = $form.find('input[name="adresse_user"]').val();
  var name_user = $form.find('input[name="name_user"]').val();
  $.post('../../models/boite_poster/accept_added_istichara_job.php',{'id_ist_job':id_ist_job,'name_ist_job':name_ist_job,'adresse_user':adresse_user,'name_user':name_user});
  $form.hide(1100);
});
});


while
{
echo '<div id="bouttons_sous_msg">
 <span id="boutton" class="ajoute_au_liste" >
 <form action=""  >
 <input type="hidden" name="id_ist_job" value="'.$id_ist_job.'"     />
 <input type="hidden" name="name_ist_job" value="'.$donnees['name'].'"  />
 <input type="hidden" name="adresse_user" value="a"   />
 <input type="hidden" name="name_user" value="'.$_SESSION['name'].'"   />
 <input type="button" class="ajoute_au_listex" value="ajout dans list"  />
 </span> '; 
}
1