Geachte,
Ik heb een zoekpagina gemaakt, maar in deze pagina wil ik graag de mogelijke zoekresultaten ook al in een pulldownmenu weergeven.
Ik ben volgens mij al een aardig eind op weg, alleen krijg ik nog geen resultaten.
Ik begin met de volgende query:

$query  = "SELECT * FROM verenigingen ORDER BY verenigingsnaam";
$result = mysql_query($query);		
while($row2 = mysql_fetch_array($result)) {
}  

De query werkt 100%. Alleen denk ik dat de while verkeerd staat of er niet in hoort, maar dat ik dit op een andere manier moet oplossen.
Ik heb het volgende stuk html waar ik graag een selectievak wil weergeven met alle verenigingsnamen die in bovenstaande query naar voren komen.
Ik hoop dat iemand mij kan helpen

<td width='250'>
<select name='zoekterm2'>";
<option>value=<?php echo "$row2[verenigingsnaam]"; ?></option>
</select>
</td>

mvg Sander
Een while-loop zorgt ervoor dat de loop blijft draaien zolang als je resultaten hebt. Dan moet je natuurlijk ook wel wat in die loop doen. Dat doe jij niet. Logisch dat je dan niets ziet...

- Open voordat je de loop ingaat de <select>;
- Echo in de loop je <option value=""> (en niet <option>value="");
- Sluit na de loop de </select>.
Bedankt, maar ik doe denk ik nog steeds ergens iets fout. als ik in de while echo dan krijg ik netjes alle resultaten. Echter in de option value nog niet.
[code]
<select name='zoekterm2'>
<?php
$query = "SELECT * FROM verenigingen ORDER BY verenigingsnaam";
$result = mysql_query($query);
while($row2 = mysql_fetch_array($result)) {

?>

<option value="<?php echo $row2["verenigingsnaam"];?>"></option>
</select>
</td>
<?PHP
}
?>
Nog een keer mijn punten doorlopen:
<?php
// Open voordat je de loop ingaat de <select>
echo "<select name=\"zoekterm2\">\n";

$query = "SELECT * FROM verenigingen ORDER BY verenigingsnaam";
$result = mysql_query($query);
while($row2 = mysql_fetch_array($result)) {
// Echo in de loop je <option value=""> (en niet <option>value="")
echo "<option value=\"".$row2["verenigingsnaam"]."\">".$row2["verenigingsnaam"]."</option>\n";
}

// Sluit na de loop de </select>
echo "</select>\n";
?>
Edit: na lang zoeken is het me gelukt. Het had te maken dat ik tijdens testen te slordig werk. Ik voerde twee keer een query uit en die bleef lopen.
Bedankt Elwin!

Ok gaaf, bedankt,
Nu heb ik inderdaad een pull down menu, maar ik heb het idee dat hij de waarde in het veld niet meeneemt naar de volgende pagina. Mijn totaal ziet er nu als volgt uit:

<tr>
				<td>
				<form action="overzichtvereniging_2.php" method="post" name="zoekterm"></span>
				
				
				
			
			<?PHP
$status2_SQL="SELECT * FROM verenigingen";
$status2_result=mysql_query($status2_SQL);
?> 


<!-- De keuzelijst //-->


				<tr class='R1'>
				<td>
				<b>Selecteer vereniging</b></td>
				<td><select name="zoekterm">
				
				
				
				<?php
				while($status2=mysql_fetch_array($status2_result))
				{
				?> 

				<option value="<? echo $status2['verenigingsnummer'] ?> ">

				<?php echo $status2['verenigingsnaam'] ."<br>";?> 

				<?php
				}
				?> 
				</td>
				</select>

Op de volgende pagina heb ik gewoon een variabele aangemaakt, maar deze blijft leeg

$zoekterm = $_POST["zoekterm"];
Leer netter scripten. Niet steeds php openen en dan weer sluiten om er enkele html-tags tussen te proppen. Verder zie ik <form action .....></span> oftewel begin form en eind span, dat zit ook niet netjes in elkaar.
En $zoekterm = $_POST["zoekterm"];
Wat voegt het toe aan je script om een extra onnodige nieuwe $var te maken? Wat is er op tegen om gewoon $_POST["zoekterm"] te gebruiken?

Reageren