login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[SQL] records 1 dag (Opgelost)

Offline Rmy - 27/02/2010 13:10 (laatste wijziging 27/02/2010 13:10)
Avatar van RmyNieuw lid Goedendag,

Ik probeer bepaalde gegevens op te halen die vandaag of deze maand zijn opgehaald. Dit doe ik op de volgende manieren:

  1. <?php
  2. //vandaag
  3. $vandaag = mysql_query("SELECT id FROM db WHERE db_date + INTERVAL 1 DAY > NOW()") OR DIE(mysql_error());
  4. //deze maand
  5. $deze_maand = mysql_query("SELECT id FROM db WHERE db_date + INTERVAL 1 MONTH > NOW()") OR DIE(mysql_error());
  6. ?>


Maar het lijkt er nu meer op dat hij voor 1 dag 24 uur pakt. En voor een maand dus 31 dagen pakt? Hoe kan ik dit fixen dat hij ze toch van een dag pakt?

3 antwoorden

Gesponsorde links
Offline TotempaaltJ - 27/02/2010 15:39
Avatar van TotempaaltJ PHP interesse Vraagje: Een dag is toch vierentwintig uur?
Offline drie_elf - 27/02/2010 16:24 (laatste wijziging 27/02/2010 16:34)
Avatar van drie_elf Nieuw lid
  1. //vandaag
  2. $vandaag = mysql_query("SELECT `id` FROM `db` WHERE `db_date` + INTERVAL 12 HOUR > NOW()") or die("Databasefout regel 2: ". mysql_error());


Zoiets? Of je bedoelt natuurlijk alleen van vandaag vanaf 0:00 uur vanacht.. dan pak je het beter zo aan:

  1. // datum variabelen
  2. $dag = date("d");
  3. $maand = date("j");
  4. $jaar = date("Y")
  5.  
  6. //vandaag
  7. $vandaag = mysql_query("SELECT `id` FROM `db` WHERE DAY(`db_date`) = '$dag' AND MONTH(`db_date`) = '$maand' AND YEAR(`db_date`) = '$jaar'") or die("Databasefout regel 7: ". mysql_error());

Offline Rmy - 28/02/2010 23:46 (laatste wijziging 01/03/2010 00:16)
Avatar van Rmy Nieuw lid Dit werkt niet echt. Als ik volgens om de query een mysql_num_rows gooi dan krijg ik er 0 uit. Terwijl er wel zeker iets hoger dan 0 moet uitkomen.

Oplossing:
  1. WHERE db_date >= NOW()-CURTIME()
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.303s