Formulaire et affichage sur la même page

Résolu/Fermé
fad2015 Messages postés 38 Date d'inscription lundi 23 février 2015 Statut Membre Dernière intervention 30 mars 2015 - Modifié par jordane45 le 27/02/2015 à 10:41
jordane45 Messages postés 38173 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 - 2 mars 2015 à 13:06
Bonjour,

je suis débutant en php mais je sais bien insérer et modifier les informations de dans ma BD à partir d'un formulaire.

je me suis créé un formulaire php contenant une liste déroulante(ville) et un bouton(submit). Lorsque je clique sur la ville, j'arrive à afficher la liste des clients de cette ville dans un tableau sous mon formulaire.

J'ai utilisé Ajax(que je ne maitrise pas du tout) pour récupérer les informations dans ma BD, Et jusque là tout va bien.

Mais il se trouve que j'ai créé une cellule dans mon tableau d'affichage qui contient des checkbox. lorsqu'on traite le dossier d'un client, on doit pouvoir cocher le checkbox qui est devant son nom et cliquer sur le bouton(submit). et le clic sur ce bouton doit informer la BD que ce client est traité et afficher les autres clients qui ne sont pas encore traités.
Mon problème est que j'arrive pas à récupérer la valeur des checkbox dans un autre fichier traitement.php parce que ce checkbox à été crée lors de l'appel avec Ajax.

Si quelqu'un pouvait m'aider à résoudre ce problème j'en serai vraiment ravis.

voici le code de ma page affiche.php
//******connexion à a BD déjà effectuéé***

<?php
// Requête pour récupérer la liste des villes
// enregistrées dans la BDD
$sql='SELECT DISTINCT ville
   FROM client 
   GROUP BY  ville
   ORDER BY ville '; 
$arrVilles=mysql_query($sql); // lancement de la requêtre 
?>

<form action="" method="post">
 VILLE 
<select  name="ville" id="sel_ville" onclick="afficheVille(this.value);">
     <option value="choisir une ville"></option>
       <?php
              while( $data=mysql_fetch_array($arrVilles)) { 
                    $ville = $data['ville'];
                   echo "<option value='$ville'>$ville</option>";
   }
 ?>
 </select>

   <script type="text/javascript">
       //Script permettant de rafraichir la page 
       //en fonction de la ville selectionnée
       // Necessite la librairie JQUERY
       function afficheVille(ville){
       urlAjx = "recherche.ajx.php";
        $.ajax({   
       type: "POST",
        url:urlAjx,
        data: "ville="+ville,
        async: false,
        dataType: "html",
        success: function(data){
          $("#tbody_detail").html(data);
        },
        error:function(reponse){
        alert('error ' + reponse);
        }
        });

       }
       </script>  

<input type="submit" value="Valider" >
 <table border=1" id="tbl_donnees"> 
          <thead>
           <tr> 
//************Entête de mon tableau d'affichage*************                                       </tr>           
         </thead>           
   <tbody id="tbody_detail">           
   < /tbody>        
     </table> 
</form>



Voici le code de ma page rechercher.ajx.php
<?php

$result="";
 $ville=isset($_POST['ville'])?$_POST['ville']:NULL;
 if($ville){ 
  $req='select * from client where ville="'.$_POST['ville'].'" and valider!="oui"'; 
  $res=mysql_query($req); // lancement de la requêtre 

   while( $data=mysql_fetch_array($res)) {  
   $result .="
     <tr>   
 <td><font size=2>".$data['nom']."</font></td> 
 <td><font size=2>".$data['prenom']."</font></td> 
        <td><font size=2>".$data['date nais']."</font></td>
        <td><font size=2>".$data['ville']."</font></td> 
 <td><font size=2>".$data['portable']."</font></td> 
 <td><font size=2>".$data['fixe']."</font></td>
        <td><font size=2>".$data['email']."</font></td> 
 <td><font size=2>".$data['code postal']."</font></td> 
 <td><font size=2>".$data['adresse']."</font></td>
<bold><td> <input type='checkbox' name='valider[]' value=.$data['nom']." > </td></bold> //c'est cette valeur que je veux récupérer
</tr>";    
    } 
 }
 print ($result);
?>




je suis vraiment bloqué sur ça!! merci d'avance à tous ceux essayerons de m'aider....


EDIT : Ajout du langage dans les balises de code

A voir également:

2 réponses

hharchi9 Messages postés 567 Date d'inscription mercredi 18 décembre 2013 Statut Membre Dernière intervention 1 juillet 2015 24
26 févr. 2015 à 20:13
Bonsoir,

Je crois qu'il faut créer un second formulaire lorsque vous affichez les clients de la ville. Sinon, ce que vous envoyez via le submit n'ai pas traité.
0
jordane45 Messages postés 38173 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 4 665
Modifié par jordane45 le 27/02/2015 à 10:45
Bonjour,
Mon problème est que j'arrive pas à récupérer la valeur des checkbox dans un autre fichier traitement.php parce que ce checkbox à été crée lors de l'appel avec Ajax.

Que la checkbox soit créée via Ajax ou Php ou directement dans le html de la page n'a pas d'incidence sur son fonctionnement....
par contre.. tu as oublié des quotes autour de son attribut VALUE :
<td> <input type='checkbox' name='valider[]' value=.$data['nom']." > </td><
</tr>";    


A transformer en :
<td> <input type='checkbox' name='valider[]' value='".$data['nom']."' > </td><
</tr>";    


Cordialement,
Jordane
0
fad2015 Messages postés 38 Date d'inscription lundi 23 février 2015 Statut Membre Dernière intervention 30 mars 2015
2 mars 2015 à 12:28
merci ça marche c'est tout bon.... merciiii
0
jordane45 Messages postés 38173 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 4 665 > fad2015 Messages postés 38 Date d'inscription lundi 23 février 2015 Statut Membre Dernière intervention 30 mars 2015
2 mars 2015 à 13:06
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
0