dropdown menu in formulier

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Raul Wallaart

Raul Wallaart

07/10/2006 10:33:00
Quote Anchor link
Hallo,

ik heb een formulier om gegevens naar een database te sturen. Hier in zit een dropdown menu om een keuze te maken uit verschillende opties, die genereert worden uit een database. Dat ziet er zo uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
include ("dbconnect.php");
echo "<select name=ob_type>";

$result_type = mysql_query("SELECT * FROM woningtype ORDER BY type_ID");
while ($row = mysql_fetch_array($result_type))
{

echo "<option value=\"".$row["type_ID"]."\">".$row["type_woning"]."</option>";
}

echo "</select>";
?>


Dit werkt op zich prima. Het probleem dat zich voordoet is echter op het moment dat ik het formulier oproep om waardes aan te passen, deze dropdown standaard op de bovenste optie staat en niet de eerder genoemde keuze.

Weet iemand een oplossing?

Groet Raúl
Gewijzigd op 01/01/1970 01:00:00 door Raul Wallaart
 
PHP hulp

PHP hulp

27/11/2024 02:34:25
 
Joren de Wit

Joren de Wit

07/10/2006 10:57:00
Quote Anchor link
Op wat voor manier roep je dat formulier op om waardes aan te passen. Zijn de eerder gemaakte keuzes voor deze select al eerder ergens vastgelegd (bijv in een database of sessie)?.

Als dat zo is zou je met een if-statement in je while loop kunnen controleren of een optie geselecteerd moet zijn en in dat geval de parameter 'selected=selected' meegeven aan je option tag.

[off-topic]
Ze je echo's tussen enkele quotes, dan hoef je de dubbele quotes van je html niet te escapen ;)
[/off-topic]
 
Citroen Anoniem Graag

Citroen Anoniem Graag

07/10/2006 18:15:00
Quote Anchor link
wat bedoel je precies met eerder genoemde keuze?
 
Jurgen assaasas

Jurgen assaasas

10/10/2006 10:25:00
Quote Anchor link
ik heb ongv hetzelfde probleem. Je hebt een dropdown menu waarbij je een waarde selecteert. Vervolgens schrijf je die in je DB. En wordt goed weergegeven. echter klik je op de edit knop oid kom je op de edit pagina en daarbij wordt de waarde van het dropdown menu op default gezet. bij mij is dit "- Kies een optie -" snappie?:)
 
Robert Deiman

Robert Deiman

10/10/2006 10:33:00
Quote Anchor link
Als je het formulier oproept, zou ik even kijken naar een script/ tutorial van Jan, die heeft daarin goed uitgelegd hoe je een dropdown kan laten maken, die de juiste keuze selecteerd.

En dat was deze tut:

http://www.phphulp.nl/php/tutorials/2/404/
 
Raul Wallaart

Raul Wallaart

10/10/2006 10:43:00
Quote Anchor link
Ik heb twee tabellen waarvan de dropdown (gegenereerd uit tabel: -status-) de waarde (status_ID) verstuurt naar een andere tabel: -klant-. Bij het updaten van een record uit klant met dezelfde dropdown liet hij dus de eerste waarde zien uit status en niet degene die ik al eerder aan deze klant had toegewezen. Mede dankzij Blanche heb ik het nu zo opgelost.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
echo "<select name=kl_status>";
$result_status = mysql_query("SELECT * FROM status ORDER BY status_ID");
while ($row_status = mysql_fetch_array($result_status))
{

echo "<option value=\"".$row_status["status_ID"]."\"";
if ($row_klant["kl_status"] == $row_status["status_ID"])
echo " selected";
echo ">".$row_status["status_naam"]."</option>";
}

echo "</select>";
?>
Gewijzigd op 01/01/1970 01:00:00 door Raul Wallaart
 
Robert Deiman

Robert Deiman

10/10/2006 10:47:00
Quote Anchor link
Ik heb dat stukje even voor je herschreven, nu wordt het wel valide (X)HTML. Zoals jij het had niet.. Ik heb enkele quotes gebruikt voor de echo, zodat je de dubbele quotes, zoals het normaal ook gaat in (X)HTML code, gewoon kan gebruiken.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
echo '<select name="kl_status">';
$result_status = mysql_query("SELECT * FROM status ORDER BY status_ID");
while ($row_status = mysql_fetch_array($result_status))
{

echo '<option value="'.$row_status["status_ID"].'"';
if ($row_klant["kl_status"] == $row_status["status_ID"])
echo ' selected="selected"';
echo '>'.$row_status["status_naam"].'</option>';
}

echo '</select>';
?>
 
Raul Wallaart

Raul Wallaart

10/10/2006 10:49:00
Quote Anchor link
Ik ben eigenlijk helemaal niet op de hoogte van (X) HTML. Wellicht in de toekomst dus zal je stukje code overnemen.

Bedankt voor je snelle reactie!

Raúl
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.