login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[opgelost]Datum ophalen - selecteren

Offline Dark_Paul - 09/08/2006 10:25 (laatste wijziging 09/08/2006 10:50)
Avatar van Dark_PaulPHP ver gevorderde Hej,
ik wil in een tabel datum, begintijd en eindtijd invoeren. ik had bedacht deze allemaal met time() te doen, aangezien ik de tijd tussen begintijd en eindtijd wil weten. met time kan ik die mooi van elkaar aftrekken en in een H:i-vorm zetten. Maar dat ging dus niet zo gemakkelijk als ik dacht. Ik gebruik dit stukje voor datum selecteren:
  1. <select name="datum_dag">
  2. <?php
  3. for ($i=1; $i <= 31; $i++) {
  4. if ($i = $dag) {
  5. echo '<option value='.$i.' selected = "selected">'.$i.'</option>';
  6. }
  7. else {
  8. echo '<option value='.$i.'>'.$i.'</option>';
  9. }
  10. }
  11. ?>
  12. </select>&nbsp;-&nbsp;
  13. <select name="datum_maand">
  14. <?php
  15. for ($i=1; $i <= 12; $i++) {
  16. if ($i = $maand) {
  17. echo '<option value='.$i.' selected = "selected">'.$i.'</option>';
  18. }
  19. else {
  20. echo '<option value='.$i.'>'.$i.'</option>';
  21. }
  22. }
  23. ?>
  24. </select>&nbsp;-&nbsp;
  25. <select name="datum_jaar">
  26. <?php
  27. for ($i=1996; $i <= 2006; $i++) {
  28. if ($i = $jaar) {
  29. echo '<option value='.$i.' selected = "selected">'.$i.'</option>';
  30. }
  31. else {
  32. echo '<option value='.$i.'>'.$i.'</option>';
  33. }
  34. }
  35. ?>
  36. </select>

Nu het probleem: de datum/tijd wordt niet goed opgehaald. $dag = time('d'); resulteert in dit: 1155111723. Het moet resulteren in 9(want het is vandaag de 9'e van de maand). Maar dat is neit het enige probleem. De value's van mijn select-options worden ook te hoog. Ik heb een else-if in de for-loop staan, maar toch krijg ik als geselecteerde waarde 1155111723 te zien bij datum_dag. Dat is ook zo bij de andere data-selects, begintijden, eindtijden. Werken met date() gaat niet, want als ik time() door date() loopt mn browser vast zodra ie bezig is met de eerste select van de datum.
edit: ik zie nu ook dat de options overal hetzelfde getal hebben, en geen andere options zijn.

3 antwoorden

Gesponsorde links
Offline Button - 09/08/2006 10:30
Avatar van Button PHP ver gevorderde
Citaat:
Nu het probleem: de datum/tijd wordt niet goed opgehaald. $dag = time('d'); resulteert in dit: 1155111723. Het moet resulteren in 9(want het is vandaag de 9'e van de maand).


dat moet zo:
  1. <?php echo date("d", time()); ?>
Offline Tuinstoel - 09/08/2006 10:31
Avatar van Tuinstoel PHP expert $i = $iets
Maak eens == van die =, je kijkt nu of je iets een waarde kan geven, en met == kijk je of het ergens gelijk aan is.
Offline Dark_Paul - 09/08/2006 10:50 (laatste wijziging 09/08/2006 10:50)
Avatar van Dark_Paul PHP ver gevorderde Doh! dat ik die over 't hoofd zag Tuinstoel. bedankt!
Jij ook bedankt ButtonMan, 't is nu gelukt 
oplossing:
  1. $tijd = time();
  2. $minuut = date("i", $tijd);
  3. $uur = date("H", $tijd);
  4. $dag = date("d", $tijd);
  5. $maand = date("m", $tijd);
  6. $jaar = date("Y", $tijd);
  7. <select name="datum_dag">
  8. <?php
  9. for ($i=1; $i <= 31; $i++) {
  10. if ($i == $dag) {
  11. echo '<option value='.$i.' selected = "selected">'.$i.'</option>';
  12. }
  13. else {
  14. echo '<option value='.$i.'>'.$i.'</option>';
  15. }
  16. }
  17. ?>
  18. </select>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.22s