PHP - Sous-requête qui ne s'affiche pas

Résolu
MmeRose -  
 MmeRose -
Bonjour,

Je viens vous demander de l'aide car je ne vois pas mon erreur ci-dessous.
Explication : Pour mettre à jour une fiche client, je propose de sélectionner ce dernier notamment via son nom. Si plusieurs clients portent le même nom, j'affiche la liste correspondante dans une combobox <option value='Nom_Prénom_Email'> Nom Prénom / Email</option> + un 1 submit.
Ma liste déroulante s'affiche correctement, mais au submit, tout disparait et ma requête $corresp n'est pas traitée.

Merci d'avance pour votre aide.


<div id="entrezSonNom" class="mode_identification"><label for="name" id="label_par_nom" class="label_white"> Entrez son nom : </label>
        <input type="text" name="seeker_name" id="enter_numero" class="field_cherche" />
        <br /><br />
        <input type="submit" name="submit_recherche_client_by_name" id="submit_recherche_numero" class="submit_cherche" value="Rechercher" />
        <input type="submit" name="cancel_recherche_client_by_name" id="cancel_recherche_numero" class="submit_cherche" value="Annuler" />
 </div>

 if (isset($_POST['submit_recherche_client_by_name']) && !empty($_POST['submit_recherche_client_by_name']))
                    { if (isset($_POST['seeker_name']) && !empty($_POST['seeker_name']))
                         {include('../mysql_connect_immo.php'); 
                          
                          $name = mysql_real_escape_string($_POST['seeker_name']);
                          
                          $cherche_name = ("SELECT * FROM marimmo_seekers WHERE seeker_nom LIKE '%$name%' ");
                          $trouve_name = mysql_query($cherche_name) or die (mysql_error() );
						  
						  $ligne =mysql_num_rows($trouve_name);
						   if($ligne == 0)
						     {$no_name="Aucun seeker ne correspond à votre recherche";
							 }
						 else{  echo "<div id=\"select_client_name\"> 
						              <form name=\"cl\" method=\"post\" action=\"\">
									  <label for=\"correspondances_noms\" id=\"clients_correspondants\"> Seekers correspondant à votre recherche </label>
									  <select name=\"propositions_noms\">
									  ";
						        while ($dot=mysql_fetch_assoc($trouve_name))
					        	      { $nom = $dot['seeker_nom'];
									    $prenom = $dot['seeker_prenom'];
										$email = $dot['seeker_email'];
										 ?>
                                        <option value="<?php echo $nom.'_'.$prenom.'_'.$email ; ?>" >
										<?php echo $nom.' '.$prenom.' / '.$email ; ?></option>
                                <?php }   
								echo "</select>
								      <input type=\"submit\" name=\"submit_choisir\" class=\"submit_cherche\" value=\"Choisir\" />
								      </form></div>";
									  
									  if(isset($_POST['submit_choisir']) && isset($_POST['propositions_noms']))
									    {$prop = mysql_real_escape_string($_POST['propositions_noms']);
										 $break= str_replace('_', ' ', $prop); 
										 $x= explode(' ', $break);
										 $noma= $x[0];
										 $prenoma= $x[1];
										 $emaila= $x[2]; // var_dump me renvoit correctement la valeur de $break, $x, $noma,$prenoma, $emaila
										                 // C'est en dessous que problème
										 
									    $corresp = ("SELECT * FROM marimmo_seekers WHERE seeker_nom = '".$noma."' AND seeker_prenom='".$prenoma."' AND 
										           seeker_email='".$emaila."' ");
										 $correspondance= mysql_query($corresp) or die(mysql_error()); // var_dump($corresp ou $correspondance) ne s'affiche même pas !
										 
										 $data=mysql_fetch_assoc($correspondance);
										 $seeker_id= $data['seeker_id']; 
									   
										}
										
						   	 }		  					  
                         }	  
                   }
            else if (isset($_POST['cancel_recherche_client_by_name'])) 
                    { echo '';	 
                    }
			else {}	
         

A voir également:

2 réponses

Utilisateur anonyme
 
Bonjour

Ta requête $corresp est à l'intérieur du
if(isset($_POST['submit_choisir']) 
qui est lui-même à l'intérieur du
if (isset($_POST['submit_recherche_client_by_name'])
.

Mais ces deux submit ne peuvent pas exister en même temps, tu soumets un seul formulaire à la fois.
Il faut faire le traitement associé à
if(isset($_POST['submit_choisir'])
à l'extérieur du
if (isset($_POST['submit_recherche_client_by_name'])
.
1
MmeRose
 
Merci Le Père pour ta réponse, concise, claire et efficace. Perfect !
0
Utilisateur anonyme
 
De rien :)
0
MmeRose
 
:)
0