Gerecht samenstellen
De gerechten staan allemaal een voor een in de database, dus ik heb geen optietabel waaruit gekozen kan worden. Zou iemand mij in de goede richting kunnen helpen hoe ik dit het handigste kan doen?
Alvast bedankt.
Boyd
Ik zou zeggen: begin eens en vertel ons waar je vastloopt.
Is dit nou een vacature of een vraag om hulp?
B Klaas op 05/12/2010 10:50:42:
Zou iemand mij in de goede richting kunnen helpen hoe ik dit het handigste kan doen?
Met querys ?:D
Gewijzigd op 05/12/2010 13:18:13 door Mitchel V
Hoe je e.e.a. in PHP op kunt lossen zul je zelf even uit moeten zoeken. Kom je er niet uit, laat dan weten waar je precies vastloopt. Dan kunnen we je hier gericht helpen...
Sorry dat ik niet duidelijk genoeg was, ik heb al het hele script gemaakt voor de normale gerechten, en ben nu dus bezig met de zogenaamde 'schotels' (zoals in startpost uitgelegd). Hoe kan ik dit het makkelijkste aanpakken, want alle mogelijke opties in de database zetten lijkt me niet slim, of wel?
Aanvullend kun je in het keuzemenu waar ik over sprak natuurlijk alleen de gerechten aanbieden die in combinatie mogelijk zijn. Dus gebruiker selecteert in eerste instantie bijvoorbeeld gerecht C, krijgt dan een dropdown list te zien met alle gerechten die daarmee te combineren zijn. Kiest hij daar een gerecht, krijgt hij vervolgens weer een extra dropdown list te zien met de dan te combineren gerechten. Uiteindelijk zal hij dan een combinatie kunnen samenstellen of alleen voor bijvoorbeeld gerecht C kiezen.
De controle in PHP volgt daarna, die mag je niet overslaan.
Dat gedeelte is duidelijk, maar zodra een optie geselecteerd wordt, hoe zorg ik dan dat de keuzes er automatisch bij komen? Met ajax?
Als je voor het laatste kiest, kun je op de dropdown boxen een onchange attribuut zetten waarmee je het formulier verzendt.
Bedankt, daar had ik nog niet aan gedacht. Ik denk dat ik er zo wel uit kom.
Succes!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
...
while($row = mysql_fetch_assoc($result)) {
echo" <td>".$row['omschrijving']."</td>";
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
echo" <select onchange=\"this.form.submit()\">";
echo" <option value=\"\">Maak een keuze...</option>";
echo" <option value=\"single\">Single</option>";
echo" <option value=\"dubble\">Dubble</option>";
echo" <option value=\"dubblespec\">Dubble Speciaal</option>";
echo" <option value=\"triple\">Triple</option>";
echo" <option value=\"triplespec\">Triple Speciaal</option>";
echo" </select></form></td>";
...
?>
...
while($row = mysql_fetch_assoc($result)) {
echo" <td>".$row['omschrijving']."</td>";
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
echo" <select onchange=\"this.form.submit()\">";
echo" <option value=\"\">Maak een keuze...</option>";
echo" <option value=\"single\">Single</option>";
echo" <option value=\"dubble\">Dubble</option>";
echo" <option value=\"dubblespec\">Dubble Speciaal</option>";
echo" <option value=\"triple\">Triple</option>";
echo" <option value=\"triplespec\">Triple Speciaal</option>";
echo" </select></form></td>";
...
?>
Staat er in /hf/ wel een index?
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
...
?>
...
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
...
?>
Alleen wat gaat er precies fout? Ik gebruik om te testen de localhost; daar draait wamp server op. Misschien ligt het dan in de php.ini?
Suc6
Duidelijk. Ik zal vanvond als ik thuis ben eens kijken.
B Klaas op 06/12/2010 09:47:44:
Ja, index.php. Ik denk dat het hier fout gaat. of niet:
Alleen wat gaat er precies fout? Ik gebruik om te testen de localhost; daar draait wamp server op. Misschien ligt het dan in de php.ini?
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
...
?>
...
echo" <td><form method=\"GET\" name=\"type\" action=\"<?php echo $_SERVER[PHP_SELF];?>\">";
...
?>
Alleen wat gaat er precies fout? Ik gebruik om te testen de localhost; daar draait wamp server op. Misschien ligt het dan in de php.ini?
Als je wilt dat hij de formulier op de zelfde pagina uitvoert kan je action er toch gewoon uit halen? :)
Nee, want dan blijft de inhoud van de andere formulieren niet behouden, die worden dan geleegd. Dit is wel van belang voor bijvoorbeeld de aantallen.
1. Variabelen buiten quotes
2. doe je niet in je php code ;-)
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
echo" <td><form method=\"GET\" name=\"type\" action=\"". $_SERVER['PHP_SELF']."\">";
...
?>
...
echo" <td><form method=\"GET\" name=\"type\" action=\"". $_SERVER['PHP_SELF']."\">";
...
?>
Oja, ik zou ook nog een enkele quote gebruiken ipv dubbele omdat dat met html wat gemakkelijker is :-)
Gewijzigd op 06/12/2010 16:41:58 door - Raoul -
Internet Verslaafde op 06/12/2010 16:40:51:
Oja, ik zou ook nog een enkele quote gebruiken ipv dubbele omdat dat met html wat gemakkelijker is :-)
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
echo" <td><form method=\"GET\" name=\"type\" action=\"". $_SERVER['PHP_SELF']."\">";
...
?>
...
echo" <td><form method=\"GET\" name=\"type\" action=\"". $_SERVER['PHP_SELF']."\">";
...
?>
Oja, ik zou ook nog een enkele quote gebruiken ipv dubbele omdat dat met html wat gemakkelijker is :-)
Dus wordt het zo.
Code (php)
1
2
3
4
5
2
3
4
5
<?php
...
echo '<td><form method="GET" name="type" action="' . $_SERVER['PHP_SELF'] . '">';
...
?>
...
echo '<td><form method="GET" name="type" action="' . $_SERVER['PHP_SELF'] . '">';
...
?>