login  Naam:   Wachtwoord: 
Registreer je!
 Forum

datum (Opgelost)

Offline ArcanA - 08/02/2009 19:15 (laatste wijziging 08/02/2009 19:16)
Avatar van ArcanAPHP beginner Hallo,

Kan iemand me even uitleggen hoe ik datums van elkaar kan vergelijken, dus als $b al voorbij is, met er komen echo 'Deze datum is voorbij!';

$a = date("Y-m-d");
$b = '2008-08-02';

Ik veronderstel dat $a de datum van nu is?

Ik weet wel als het vandaag die dag is dat ik
$a == $b moet doen maar dit kan toch niet kloppen bij groter of kleiner?

Mvg,
ArcanA

12 antwoorden

Gesponsorde links
Offline Abbas - 08/02/2009 19:17
Avatar van Abbas Gouden medaille

Crew .NET
Een beetje zoeken op Google kan nooit kwaad: http://www.google.be/search?q=date+difference+php
Offline vinTage - 08/02/2009 19:20
Avatar van vinTage Nieuw lid
  1. <?php
  2. $b = "2009-02-07";
  3. if(date("Y-m-d") > $b)
  4. {
  5. echo 'te laat';
  6. }
  7. else
  8. {
  9. echo 'je kan nog';
  10. }
  11. ?>
Offline svm - 08/02/2009 20:05
Avatar van svm PHP ver gevorderde Zelf vind ik het altijd het makkelijkst om met UNIX timestamp te werken:

  1. <?php
  2. $datum = mktime(0,0,0,2,8,2009); //uur, minuut, sec, maand, dag, jaar
  3. if(time() < $datum) {
  4. echo 'De datum is nog niet geweest.';
  5. }else{
  6. echo 'De datum is al voorbij.';
  7. }
  8. ?>
Offline ArcanA - 08/02/2009 20:43 (laatste wijziging 08/02/2009 20:44)
Avatar van ArcanA PHP beginner Oké dat lukt van VinTage, ook enig idee waarom ik niet kan optellen?

  1. $aantalfixpas = $_POST['aantalfixpas'];
  2.  
  3. if ($aantalfixpas == 3) {
  4. $nu = date("Y-m-d");
  5. $vervaldatum = '00-03-00';
  6. $result = $nu + $vervaldatum;
  7. }


ik probeer 3 maanden bij te tellen...
Offline Joost - 08/02/2009 20:48
Avatar van Joost PHP expert Dat is iets wat niet werkt in PHP, de parser ziet het dan niet meer als een datum 

Probeer dit:
  1. $result = date("d-m-Y" , strtotime("+3 month" ));
Offline ArcanA - 08/02/2009 22:15 (laatste wijziging 08/02/2009 22:16)
Avatar van ArcanA PHP beginner Bedankt, alles is tot nu toe gelukt, nu heb ik een zeer moeilijk probleem;


Ik maak een input , de value roep ik op in de database.

  1. <input type="text" value="'.$startpasss.'" name="startpas" />


  1. //$data verwijst naar een SELECT query
  2. $startpasss = strtotime($data['u_startpas']);
  3. $startpasss = date("j.n.y",$startpasss);


In de database staat een Y.d.m datum type , de gebruiker wil hem alleen aan kunnen passen in j.n.y formaat, het veranderen in database is voor mij echt geen optie. Nu heb ik de value van de input al kunnen veranderen in j.n.y type. Enkel hoe moet ik dit nu weer in Y.d.m type in de database steken?

Iemand een idee?
Offline marten - 08/02/2009 22:22
Avatar van marten Beheerder Ook gewoon weer met date?

  1. $new = date("Y.d.m", $je_andere_tijd);


En probeer toch aub je datum te veranderen naar een datetime veld of een date veld.

bekijk ook de tutorials die ik hierover geschreven heb.

deel 1
deel 2
Offline Joost - 08/02/2009 22:24
Avatar van Joost PHP expert
  1. $dateInput = $_POST['startpass'];
  2. $UNIX = strtotime($dateInput);
  3. $newDate = date("d-m-Y", $UNIX);


Je kan hem beter zo uit de database selecteren:

  1. SELECT DATE_FORMAT(date, '%j-%n-%y') AS date FROM tabel;
Offline ArcanA - 08/02/2009 22:44
Avatar van ArcanA PHP beginner @ marten:

Dus, dat komt overeen met:


  1. <?php
  2. $new = date("Y.d.m", '8.3.09');
  3. ?>


En ik moet veronderstellen dat 8.3.09 naar Y.d.m omzet?
Offline marten - 08/02/2009 22:49
Avatar van marten Beheerder gebruik ook weer de functie PHP.net: strtotime.

Gebruik desnoods een explode op de punt en stel zelf je datum samen. Shit man iets meer initiatief kerel!
Offline ArcanA - 08/02/2009 22:50
Avatar van ArcanA PHP beginner Ik heb initiatief maar heb gewoon deze zaken nog nooit gedaan dus heb hier geen verstand van ;).
Offline marten - 08/02/2009 22:51
Avatar van marten Beheerder Zoeken kan altijd , nadenken over mogelijke oplossingen kan ook altijd.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.268s