Huur-formulier met berekeningen
Wij zijn bezig om een formulier te ontwikkelen voor een informatica-opdracht.
De gebruiker moet het volgende invullen:
- Naam, e-mail en telefoonnummer
- Datum van begin huur (auto ophalen) en eind huur (auto terugbregnen)
- Er moeten extra opties geselecteerd worden (airport pick-up, telefoonhuur, extra bestuurder, etc.)
Vervolgens moet, op dezelfde pagina, een overzicht komen van de kosten.
Dit overzicht moet realtime bijgewerkt worden a.d.h.v. de geselecteerde opties en data.
De huurprijs hangt af van de maanden waarin gehuurd wordt (als de huur over meerdere maanden verspreid is, moeten er dus meerdere berekeningen gedaan worden).
De extra opties hebben elk een vaste prijs.
Vervolgens is er een knop 'verzenden' waarmee het formulier naar ons gestuurd wordt.
We hebben een standaard e-mail formulier gedownload (http://www.phphulp.nl/php/script/data-verwerking/contact-formulier/12/) en hebben hierin de opties al toegevoegd.
Wat er nu nog toegevoegd moet worden, is het bereken van de kosten, en dit complete overzicht moet gemaild worden naar ons.
Is er iemand die ons hiermee een beetje op weg kan helpen, en ons bijvoorbeeld kan vertellen welke functies we hiervoor nodig hebben (GET, POST, etc.). We hebben nog niet veel ervaring met PHP, maar moeten dit met deze praktische opdracht opdoen.
Als iemand ons een beetje op weg kan helpen, graag!
Alvast bedankt,
Stefan
Bedankt voor de link.
Wij hebben het begin van het formulier opgezet; het berekenen van de kosten.
De e-mailfunctie willen we er dan later inmaken.
Waar we nu tegenaan lopen, is dat (nadat er op de knop 'Calculate' is gedrukt) de velden weer leeggemaakt worden en de gebruiker alles weer opnieuw in moet typen.
Hoe kunnen we dit oplossen?
We hebben ook nagedacht hoe we het beste de huur-tarieven kunnen berekenen. Dit moet gebeuren aan de hand van de maand(en) waarin gehuurd wordt; elke maand heeft zijn eigen tarief.
Het kan dus ook zijn dat er in meerdere maanden gehuurd wordt, en dat moet dan gespecificeerd weergegeven worden.
Het systeem moet dus weten hoeveel dagen er in elke maand zitten, en moet dus automatisch weten wanneer er in meerdere maanden gehuurd wordt.
Kunnen jullie ons hiermee helpen?
Het formulier zoals we het nu gemaakt hebben is te vinden op www.stefanfrerichs.nl/php/formulier.php.
Alvast bedankt!
Stefan
The requested URL /php/formulier.php. was not found on this server.
Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny8.backend with Suhosin-Patch Server at www.stefanfrerichs.nl Port 80
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
//controleer of formulier gepost is
//Als je het onderstaande 100% correct wilt doen, controleer je ook even of het al dan niet is ingevuld.
echo '<input type="text" name="iets" value="'.$_POST['iets'].'" />';
?>
//controleer of formulier gepost is
//Als je het onderstaande 100% correct wilt doen, controleer je ook even of het al dan niet is ingevuld.
echo '<input type="text" name="iets" value="'.$_POST['iets'].'" />';
?>
Ik begrijp alleen niet wat ik met deze code moet doen. Ik heb dus mijn hele formulier al gemaakt, alleen wil ik instellen dat 'onthouden' wordt wat er in de velden ingevuld is.
Wat moet ik met de bovenstaande code doen?
Je kan het in een sessie zetten :)
Kunnen jullie misschien even een iets uitgebreidere uitleg geven, hoe ik dit uit kan voeren?
Alvast bedankt!
Stefan
Wat is precies het plan, ik kan wel even wat opbouwen voor je...
Het plan is dat de gebruiker de velden invult die al in het formulier http://www.stefanfrerichs.nl/php/formulier.php staan.
Door op de knop 'berekenen' te klikken, worden de kosten onderaan berekend.
De bovenste velden moeten door de gebruiker net zo lang aangepast en herberekend kunnen worden totdat het goed is. Dan kan de gebruiker het naar ons verzenden.
Er moet dus nog een hoop gebeuren; de bereken-functie zijn we nog niet eens aan begonnen.
De eerste stap die ik nu wil zetten is dat de velden ingevuld blijven, zodat de gebruiker niet elke keer de velden opnieuw in hoeft te vullen nadat er op 'berekenen' is geklikt.
Als dat werkt, wil ik gaan kijken hoe we de berekeningen en de e-mail-functie gaan bouwen.
Groeten,
Stefan
Christiaan de kleine op 09/03/2011 14:53:08:
Wat is precies het plan, ik kan wel even wat opbouwen voor je...
Prima dat je wilt helpen (het is tenslotte phphulp), maar het is een schoolopdracht.
Stefan Frerichs op 18/02/2011 10:45:52:
Wij zijn bezig om een formulier te ontwikkelen voor een informatica-opdracht.
Het kan toch niet de bedoeling zijn dat jij/wij het huiswerk gaan maken? Hulp oké, maar er zijn grenzen.
Christiaan de kleine op 09/03/2011 14:53:08:
@Christiaan: Ga jij zomaar even deze schoolopdracht voor informatica zitten bouwen???Wat is precies het plan, ik kan wel even wat opbouwen voor je...
Toevoeging op 09/03/2011 15:23:39:
om waardes te laten staan doe je het volgende:
<input type="text" name="name" value="">
Waarbij dus de name vak en de value anders zijn bij de andere invoegvelden...
btw, form kan ik niet zien, site geeft error aan..
Toevoeging op 09/03/2011 15:29:00:
dus even in code field:
Tuurlijk is het niet de bedoeling dat anderen ons huiswerk maken!
We zijn al aardig op weg, maar bepaalde dingen kom ik gewoon niet uit.
Ik heb al op meerdere manier geprobeerd ook de 'select'-boxes te laten onthouden.
Bijvoorbeeld met de volgende code:
<select name="datumdag" id="datumdag" value="">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
Dit werkt echter niet. Moet dit dan weer op een andere manier?
Dat zal misschien te maken hebben met het feit dat er bij elke keuze al een 'value' meegegeven wordt?
Groeten,
Stefan
Voorbeeldje voor een select.
Gewijzigd op 09/03/2011 16:50:18 door christiaan de kleine
Jordi kroon op 09/03/2011 14:39:59:
Je kan het in een sessie zetten :)
Offtopic
Je kan het ook in de database opslaan om daarna weer opnieuw op te halen...
Dit is geen verstandige keuze. PHP slaat automatisch "geposte" waarden op in $_POST. Wanneer je de inhoud van een formulier toch zou willen doorgeven om één of andere reden, zou je via een $_GET kunnen werken. Het is pas echt als de gegevens moeten onthouden worden om bv. 10 pagina's later die nog is te gebruiken interessant om deze waarden in een sessie te stoppen.
Maar goed, dit is nu bij jou geen probleem. Ik wou het echter even rechtzetten voor andere beginners die mogelijk op dit topic stoten.
Thanks, ga ermee aan de slag!