login  Naam:   Wachtwoord: 
Registreer je!
 Forum

datum

Offline killerwhale6 - 15/03/2006 16:39
Avatar van killerwhale6Nieuw lid hoi,

ik wil een datum opslaan in mysql, en daarna terug weergeven. Nu is mijn vraag: hoe zit het met de format? Ik wil mijn datum ingeven als 25/03/2006. Hoe doe ik dat? Want standaard blijkt de DATE als 2006 03 25 geformateerd te zijn.

mvgr,

Matt

22 antwoorden

Gesponsorde links
Offline marten - 15/03/2006 16:43
Avatar van marten Beheerder timestamp in je db zetten

vervolgens kan je hier apart een dag , maand of jaar uithalen

deze kan je dan net zo neer zetten zoals je wilt.
Offline killerwhale6 - 15/03/2006 16:45
Avatar van killerwhale6 Nieuw lid en hoe geef je die in in de database?
Offline marten - 15/03/2006 16:47
Avatar van marten Beheerder tabel veld int(11)

$datum = time();

dan vervolgens $datum met insert in je database zetten
Offline killerwhale6 - 15/03/2006 16:50
Avatar van killerwhale6 Nieuw lid is wel de bedoeling om zelf een datum in te geven niet dat automatisch de huidige datum wordt geregistreerd
Offline Simon - 15/03/2006 16:51 (laatste wijziging 15/03/2006 16:53)
Avatar van Simon PHP expert hij wil zijn datum ingeven met ../../....

dat moet met date:

  1. <?php
  2. $time = time();
  3. $date = date("d-m-Y", $time); // meestal doet men het met ..-..-....
  4. $date2 = date("d/m/Y", $time); // zo kan uiteraard ook
  5. ?>


EDIT: je bedoelt dus dat je options maakt...

  1. <?php
  2. $dag = $_POST['dag'];
  3. $maand = $_POST['maand'];
  4. $jaar = $_POST['jaar'];
  5.  
  6. $datum = $dag."/".$maand."/".$jaar;
  7.  
  8. // dan inserten
  9.  
  10. ?>
Offline killerwhale6 - 15/03/2006 17:15
Avatar van killerwhale6 Nieuw lid als ik een datum ingeef zoals 02/12/2005 dan krijg ik te zien 0000-00-00
Offline webstab - 15/03/2006 19:03
Avatar van webstab PHP ver gevorderde ingeven als 2005-12-02 => date(Y-m-d')
Offline Simon - 15/03/2006 19:59
Avatar van Simon PHP expert je moet ervoor zorgen dat je in je tabel geen DATE hebt staan als argument, je moet gewoon VARCHAR, anders zal het niet werke
Offline killerwhale6 - 16/03/2006 13:42
Avatar van killerwhale6 Nieuw lid en zal ik dan ook opdatum kunnen sorteren en zo?
Offline Rens - 16/03/2006 13:59
Avatar van Rens Gouden medaille

Crew algemeen
Nee.
Je kunt je datum het beste met time() in de database zetten.
Vervolgens kun je hem met date() weer omvormen naar een leesbare datum.
Dat sorteerd ook makkelijker.
Offline killerwhale6 - 18/03/2006 13:11 (laatste wijziging 18/03/2006 13:29)
Avatar van killerwhale6 Nieuw lid maar time() genereert toch de huidige tijd? Ik heb toch gezegd dat ik zelf de datum moet ingeven?

ik heb nu in de tabel het type op DATE gezet, en een record heeft de datum 2005-12-24.
Vervolgens wil ik die tonen op de website en doe ik: <?php echo date("d/m/Y", $datum); ?> maar hij toont 31/12/1969. Wat doe ik nu fout?
Offline Rens - 18/03/2006 15:16
Avatar van Rens Gouden medaille

Crew algemeen
Die $datum var. werkt alleen als de datum een timestamp is.
Dan zou je beter mktime kunnen gebruiken.
Is ook makkelijker met sorteren.
Offline killerwhale6 - 18/03/2006 15:41
Avatar van killerwhale6 Nieuw lid met mktime, moet ik dan eerst mijn datum breken in verschillende stukjes van dag, maand en jaar?
Offline Rens - 18/03/2006 15:42 (laatste wijziging 18/03/2006 15:42)
Avatar van Rens Gouden medaille

Crew algemeen
Ja.
Als je dan gewoon even op http://www.php.net kijkt...
PHP.net: mktime
Citaat:
int mktime ( int hour, int minute, int second, int month, int day, int year [, int is_dst])
Offline killerwhale6 - 18/03/2006 15:48
Avatar van killerwhale6 Nieuw lid en hoe moet ik dan die datum in stukken breken?

ik heb dit geprobeerd: echo date("d/m/Y", mktime($datum));

en dat geeft 09/06/2006 ipv 24/12/2005

en echo mktime($datum); geeft 1149875110
Offline Rens - 18/03/2006 15:51
Avatar van Rens Gouden medaille

Crew algemeen
je moet het niet als 1 var ingeven.
Even een voorbeeldje:
  1. <?PHP
  2. $dag = date("d");
  3. $maand = date("m");
  4. $jaar = date("Y");
  5. $timestamp = mktime(0, 0, 0, $dag, $maand, $jaar);
  6. echo $timestamp;
  7. ?>
Offline killerwhale6 - 18/03/2006 15:56
Avatar van killerwhale6 Nieuw lid maar je haalt hier nergens een variabele op? Ik heb een datum zitten in een MySQL tabel en die wil ik tonen.
Offline Rens - 18/03/2006 16:02
Avatar van Rens Gouden medaille

Crew algemeen
Jah, maar je zult eerst toch je datum er in moeten zetten.
Dat erin zetten als timestamp is handiger met sorteren en zo.
En aangezien jij die datum zelf wou invullen, heb ik je een voorbeeldje laten zien, van hoe je zo'n timestamp kunt maken zonder gebruik te maken van time.

De datum in $timestamp is hetgene wat jij nou in je database moet zetten.
Daarna kun je hem weer ophalen met date("d/m/Y", $datum);
Offline killerwhale6 - 18/03/2006 16:18
Avatar van killerwhale6 Nieuw lid dus het is niet mogelijk om in een formulier 1 veld te hebben waar ik mijn datum typ, dat moeten er drie velden zijn (1 voor dag, een voor maand en 1 voor jaar)?
Offline Rens - 18/03/2006 16:21
Avatar van Rens Gouden medaille

Crew algemeen
Nee.
Je kunt toch ook explode gebruiken?:s
  1. //er is een input veld genaamd datum
  2. // waar je de datum als volgt in typt:
  3. // dd/mm/jjjj
  4. $sDatum = $_POST['datum'];
  5. $aDatum = explode("/", $sDatum);
  6. $sInvoer = mktime(0, 0, 0, $aDatum[0], $aDatum[1], $aDatum[2]);
  7. // INSERT INTO <tabel> (datum) VALUES ('".$sInvoer."')
Offline Simon - 18/03/2006 16:22 (laatste wijziging 18/03/2006 16:23)
Avatar van Simon PHP expert je zou kunnen je datum zo invullen
18/03/2006

en dan exploden op "/" en dan $arr[0] is 23 enz

voorbeeld:
  1. <?php
  2. $input = $_POST['datum']; // hier dus 23/08/2006
  3. $array = explode("/", $input);
  4. echo $array[0]; //waarde: 23
  5. echo $array[1]; //waarde: 08
  6. echo $array[2]; //waarde: 2006
  7. ?>
Offline killerwhale6 - 18/03/2006 16:26
Avatar van killerwhale6 Nieuw lid dat moet ik ff proberen ...
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.305s