Bonjour à tous,

J'espère que je ne me suis pas trompé de rubrique.
Alors voilà, j'essaie de faire un genre de "formulaire" qui m'enverrai la réponse correspondant à ce que l'utilisateur a selectionné.

Exemple concret: j'ai une liste déroulante avec à l’intérieur les noms des régions.
L'utilisateur sélectionne la région qui lui plait, et les résultats ( ce sont les associations) qui correspondent à cette région s'affichent.

J'ai donc une table avec id, region, noms, adresse, tel ...Ect

Les noms des régions ss'affiche bien, ainsi que le résultat , mais j'ai quand même un problème.

Mes régions s'affiche en plusieurs fois, et sur chacune d'entre elle, le resultat qui va avec.
Exemple si j'ai deux assos qui sont dans les pyrenees atlantique, et bien dans la liste déroulante j'ai deux fois pyrennee atlantique. Si je selectionne la première j'ai le resultat de la première assos, si je selectionne le deuxième j'ai le resultat de la deuxième assos.

Or ce que je voudrais c'est que la région ne s'affiche qu'une seule fois et que lorsque je selectionne pyrennee atlantique, les deux assos s'affiche.

Mais je sais pas comment on fait.
Je suis débutante en php, alors si quelqu'un pouvait avoir la gentillesse de m'aider ça serait super simpa. Car là, je seche :s

Voici le code :

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<div id="rechercherace">
 
 
 
  <form method="post" action="recherche_associations.php">
<fieldset>
       <legend>Rechercher une race </legend>
   <p> 
      <label for="region">Choisissez la race :</label>
       <select name="recherche">
 <?php 		   
	$host = "xxxxx";
$user = "xxxxx";
$password = "xxxxx";
$bdd = "xxxxx"; 
{
mysql_connect($host, $user, $password);
mysql_select_db($bdd) or die("Impossible d'ouvrir la base de donnee $bdd");
mysql_query("SET NAMES UTF8"); 
}
 
	$lettre = '1'; //On initalise la lettre a une valeur absurde
	$sql = 'SELECT id,region FROM association ORDER BY region ASC'; //ici change le champ et la table pour adapter :p
	$req = mysql_query($sql);
 
	while($data = mysql_fetch_assoc($req)) //envoie la colonne voulu $req= connect a $sql = prendre tous les noms de race_chien et classer par ordre croissant
	{
	   if (substr($data['region'],0,1) != $lettre) //Si on change de lettre; substr = extraire
	   {
			if ($lettre != '1') //Si on as d?j? chang? de lettre, on ferme le optgroup
			{
				echo '</optgroup>';
			}
			$lettre = substr($data['region'], 0, 1);
			echo '<optgroup label="'.$lettre.'">';
		}
 
		echo '<option value="'.$data['id'].'">'.$data['region'].'</option>';//donne les noms dans le formulaire
	}
 
	if ($lettre != '1') //Et enfin si on a mit une lettre (le seul cas ou ce serait faux serait celui ou l'on ne trouve rien, mais quand m?me :p
	{
		echo '</optgroup>';
	}
		?>
       </select>
    	<input type="submit" name="ok" value="Rechercher"/>		
 
   </p>
</fieldset>
</form>   
 
    <?php 	
 
	//if($_POST['ok'] == "Rechercher")
 
	if(isset($_POST['ok']))
 
	{
	//On r?cup?re les valeurs entr?es par l'utilisateur :
 
	//On pr?pare la commande sql d'insertion
	$requete = "SELECT * FROM association WHERE id='$_POST[recherche]'";
	$donnees = mysql_fetch_array(mysql_query ($requete));
 
 
	?> 
	  </p>
 
 
     <div id="rechercheasso">     
 
               <div id="asso"><img src= "<?php echo $donnees['photo'];?>" height="200" align="absmiddle"/></div>
               <div id="race2a">
			   <table>
                 <tr>
                   <td><ul>
                     <li><strong>Département :</strong> <?php echo $donnees['département']; ?><br /></li>  
					 <li><strong>Noms de l'association :</strong> <?php echo $donnees['noms']; ?><br /> </li>
					 <li><strong>Adresse :</strong> environ <?php echo $donnees['adresse']; ?>ans et plus<br /></li>
					 <li><strong>Numéros de téléphone:</strong> <?php echo $donnees['telephone']; ?><br /></li>
					 <li><strong>Adresse mail :</strong> <?php echo $donnees['mails']; ?><br /></li>
					 <li><strong>Logo :</strong>  <?php echo $donnees['photo']; ?><br /></li>
					 <li><strong>URL :</strong> <?php echo $donnees['URL']; ?><br /></li>               
					</p>
                   </ul></td>
                 </tr>
               </table>
 
             </div>
     </div>
 
	<?php
	}
 
	?>
 
 
 
 
	</div>

Voilà c'est un petit peu long, mais j'ai essayé de faire propre.
Merci aux personnes qui prendront la peine de me lire


Edit: j'ai un peu avancé de mon coté.
J'ai en fait rajouter un table.
Donc sur ma première table j'ai :
-id
-id_region
-noms
-adresse
-telephone
-mails
et sur ma deuxième table j'ai :
-id
-region
-id_region

Je crois que c'est quelques chose dans ce genre qu'il faudrait que je fasse.
J'ai lu plein d'article pour savoir comment faire pour lier les deux, mais je crois que je m’emmêle les pinceaux.

Quelqu'un aurait-il une piste?
Merci pour votre aide