[php] datum in select/option snel heen en weer converteren

Pagina: 1
Acties:
  • 60 views sinds 30-01-2008

  • TromboneFreakus
  • Registratie: Juli 2001
  • Laatst online: 01-08-2023
Als beginner in php loop ik tegen een praktisch probleem aan. Voor een agendascript heb ik net een script geschreven om gegevens toe te voegen en dit werkt prima. Voor de datum heb ik gewerkt met een grote lijst (<select><option...) om er zeker van te zijn dat de input geldig is. Dat wil zeggen: dag, maand en jaar staan in een grote lijst. Vervolgens maak ik er een MySQL datum van als volgt:

code:
1
$Datum = $jaar."-".$maand."-".$dag;


Probleem is: hoe zorg ik nu dat dit snel en efficient terug te converteren is, zodat ik gegevens kan bewerken?

Om nu zoiets te maken is niks, vanwege de vracht code die het oplevert.

code:
1
2
3
4
5
6
7
<?php
$datumdeel = explode ("-", $datum);
?>

<select name="maand">
<option value="01" <? if ($datumdeel[1] = 1) {echo ("selected"); } ?>>Januari</option>
<option value="02"<? if ($datumdeel[1] = 2) {echo ("selected"); } ?>>Februari</option>


Dat kan toch veel slimmer?

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Lees de manual eens over for-loopjes... Daar kun je al heel wat meer mee.
PHP:
1
2
3
4
5
6
7
8
9
$maand = array('januari','februari',...);
for( $i = 1; $i<12; $i++ )
{
   echo "<option value=\"$i\" ";
   if( $i == $datumdeel[1] ) echo "SELECTED";
   echo ">";
   echo $maand[$i];
   echo "</OPTION>"
}

Localhost, sweet localhost


Verwijderd

creeer de option tags in een loopje

  • TromboneFreakus
  • Registratie: Juli 2001
  • Laatst online: 01-08-2023
dank voor de tips

Met wat Googlen n.a.v. hiervan kwam ik op deze pagina
http://aspn.activestate.com/ASPN/Cookbook/PHP/Recipe/208104

Met wat verbouwen moet ik nu heel ver komen.

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 23-05 16:31

Pelle

🚴‍♂️

PHP:
1
2
3
4
for ($i = 1; $i <= 12; $i++) {
    $selected = ($i == $datumdeel[1]) ? '>' : ' selected="selected">';
    print '<option value="' . $i . '"' . $selected . $maanden[$i] . '</option>';
}


Zo doe ik het altijd.
En verder is dit redelijk basic :)

[ Voor 10% gewijzigd door Pelle op 18-08-2004 16:01 ]


Dit topic is gesloten.