login  Naam:   Wachtwoord: 
Registreer je!
 Forum

waarden van listboxen controleren

Offline yolk - 07/03/2006 16:33
Avatar van yolkHTML interesse Op een pagina kan een gebruiker een startdatum en een einddatum aangeven. De datum bestaat uit drie dropdownlistboxen. Hoe zet ik uit deze boxen de waardes bij elkaar, zodat ik kan controleren of een startdatum niet groter is dan de einddatum?

8 antwoorden

Gesponsorde links
Offline Thomas - 07/03/2006 16:45
Avatar van Thomas Moderator Gewoon de waarden aflopen?

Controleer of het eindjaar ten minste het beginjaar is.

Als het beginjaar hetzelfde is als het eindjaar:
Controleer of de eindmaand ten minste de beginmaand is.

Als de beginmaand hetzelfde is als de eindmaand:
Controleer of de einddag ten minste de begindag is.

En zorgen dat je datums geldig zijn.
Offline BigBug - 07/03/2006 16:46 (laatste wijziging 07/03/2006 16:47)
Avatar van BigBug PHP expert zet het in een date("dm");

$vFirstdate = '0409';
$vLastdate = '0509';

if($vFirstdate > $vLastdate)
{
// echo --> te groot
}
else
{
// bewerking voortzetten
}

Citaat:
Rensjuh edit:
Check de categorie eens?
Offline Thomas - 07/03/2006 17:00
Avatar van Thomas Moderator verkeerde categorie, en ook nog eens een verkeerd voorbeeld...
Offline yolk - 07/03/2006 19:05
Avatar van yolk HTML interesse BigBug, hoe verander ik die waarde van vFirstdate in een geposte waarde. De listboxen hebben de namen startdag, startmaand, startjaar, einddag, eindmaan en eindjaar. Vanwege de nederlandse leeswijze ook in de volgorde. Maar om te vergelijken moet eerst het jaar, dan de maand en dan de dag achter elkaar worden gezet. Met php is dit $_POST["startjaar"] .$_POST["startmaand"] .$_POST["startdag"] bijvoorbeeld. Maar hoe doe ik dit met javascript?
Offline BigTeddy - 08/03/2006 14:41 (laatste wijziging 08/03/2006 14:45)
Avatar van BigTeddy Gouden medaille

PHP gevorderde
Ik heb ff gekeken en heb het volgende gedaan
http://www.pastebin.be/465/

let wel op dat je de dag en maand een waardelengte geeft van 2 cijfers. 01, 02, 03, .... 10, 11, 12... want anders komt het niet inorde.
Offline Thomas - 08/03/2006 15:30
Avatar van Thomas Moderator Die functie kan nog wel wat korter, maar het werkt wss wel goed.
Let er wel op dat je daar niet echt getallen vergelijkt, maar strings - en dat je de alfabetische volgorde van begindatum en einddatum vergelijkt.
Offline BigTeddy - 08/03/2006 16:51
Avatar van BigTeddy Gouden medaille

PHP gevorderde
kan wel korter ja, maar k dacht zal wat meer variable gebruiken voor de veldnamen, da's makkelijker aan te passen maar je kan het evengoed weglaten en direct de naam van de velden (drop-down boxen) invullen bij elements['xxxxx'].

wat het vergelijken van een string betrefd en niet van een integer, voor deze toepassing is het niet nodig dat het een integer is want er wordt toch niet meegerekend en een string kan je ook controleren op waarde doordat er de ordinaal waarde eigenlijk wordt gecontroleerd
Offline Thomas - 08/03/2006 17:01
Avatar van Thomas Moderator Klopt, maar ik wilde alleen aangeven dat dit het controleren van een lexicografische ordening betreft, en geen numerieke.

Vergelijk

4 > 10 (nummers, levert false op)
"4" > "10" (strings, levert true op, omdat "4" alfabetisch gezien na "1" komt).
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.179s