Portal > Foren > PHP > PHP-Programmierung > Datum-Werte miteinander vergleichen
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 29.07.2008, 15:11 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 03.11.2005
Ort: Krefeld
Beiträge: 12
Standard Datum-Werte miteinander vergleichen

Hallo zusammen (lang ist is her das ich mich mit PHP beschäftigt habe),
stehe gerade total auf dem schlauch.
Situation ist folgende:
Ich habe eine Datenbank mit diversen Einträgen. Interessant ist nur eine Spalte (wDate).
In der Spalte wDate steht ein Datum im Format dd.mm.yyyy oder d.mm.yy oder d.m.yyyy oder oder oder
Also wie ihr seht recht schlecht gemacht. Aber egal. Nun habe ich eine Funktion die mir das Datum aus der DB in das Format YYYYmmdd konventiert.
Die Datenbankeinträge sollen jetzt Schritt für Schritt durchlaufen werden und mir nur diese angezeigt werden die > 20080401 sind.
Folgender Ansatz ($reportDay = 20080401) :
PHP-Code:
while ($daten mysql_fetch_array($result)) {
 
 if(
formatDate($daten[wDate]) > $reportDay)
 {
  echo 
$daten[wDate] . " -> " formatDate($daten[wDate]) . " > " $reportDay "<br>";
 }

Ausgabe:
28.11.2006 -> 20061128 > 20080401
01.06.2007 -> 20070601 > 20080401
27.01.07 -> 20070127 > 20080401
30.04.07 -> 20070430 > 20080401
Das kann ja nciht stimmen da 20061128 ja kleiner als 20080401 ist.

Die Funktion intval bring das selbe Ergebnis
PHP-Code:
while ($daten mysql_fetch_array($result)) {
 
 if(
intval(formatDate($daten[wDate])) > intval($reportDay))
 {
  echo 
$daten[wDate] . " -> " intval(formatDate($daten[wDate])) . " > " $reportDay "<br>";
 }

Habt ihr eine Idee?


Hat sich Erledigt.
Die Variable $reportDay habe ich versehntlich kurz vorher überschrieben.

Danke.
__________________
Es gibt 10 Wege Binärcode zu verstehen. Ganz oder garnicht

Geändert von web2 (29.07.2008 um 15:27 Uhr)
web2 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.07.2008, 15:17 Nach oben    #2
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.374
Standard

Für sowas stellt mysql den Feldtyp date zur Verfügung.


mach doch mal zur Kontrolle noch den else-Zweig mit rein.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.07.2008, 15:21 Nach oben    #3
Neuer Benutzer
 
Registriert seit: 03.11.2005
Ort: Krefeld
Beiträge: 12
Standard

Der ELSE Zweig würde wenig bringen, da alle Entries ausgegeben werden.

Hätte ich vllt. erwähnen sollen, dass dies nur ein Teil der Ausgabe ist. Sorry mein Fehler.


Zum Thema MySQL, das ist mir bekannt. Diese Datenbankstruktur ist jedoch nicht mein Werk.


--------

Hat sich Erledigt.
Die Variable $reportDay habe ich versehntlich kurz vorher überschrieben.

Danke.
__________________
Es gibt 10 Wege Binärcode zu verstehen. Ganz oder garnicht

Geändert von web2 (29.07.2008 um 15:26 Uhr)
web2 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.07.2008, 15:49 Nach oben    #4
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.374
Standard

Schön, dass es sich erledigt hat...

Aber genau sowas findet man halt dann auch mal raus, wenn man sich den else-Zweig auch mal mit anschaut.

btw - aus Sicherheitsgründen:
error_reporting
Du solltest zu Beginn des Skriptes folgendes stehen haben:
PHP-Code:
<?php
  error_reporting
(E_ALL);
?>
Dann werden dir Fehler im PHP-Code angezeigt. Dann weißt du, was du noch beseitigen musst.
http://de2.php.net/error_reporting
Ebenso kann man das auch in die config-Datei schreiben, wenn diese auf jeder Seite zu Beginn eingebunden wird.
Mögliche Fehler die dann auftreten und wie man sie beheben kann:
Notice: Use of undefined constant ...
Notice: Undefined variable ...
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Datum]Wochennummer der nächsten Woche + Datum von Montag und Freitag Jan PHP-Programmierung 9 31.10.2007 11:09
[MySQL] Tabellen vergleichen Sclot Datenbanken 0 31.01.2007 12:47
[PHP] Zeitformate, Datum und Co Jann Hendrik Tutorials 0 05.12.2006 18:48
Datum vergleichen? Lioba PHP-Programmierung 9 12.11.2005 10:46
Werte Übergabe von Klasse zu Klasse williplumps Allgemeine Java-Programmierung 3 06.08.2005 09:41


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:08 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45