power-box.de
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 23.12.2001, 07:25   #1
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE

Datum mit anderem Datum vergleichen - Differenz?


Hi,

sagen wir mal, ich hab zwei Variablen mit Datum und Uhrzeit:

$datum1="2001-12-23 06:23:00";
$datum2="2001-12-22 21:22:43";

Wie kann ich jetzt die beiden jetzt "vergleichen"? Ich möchte rauskriegen, dass das 2. Datum halt einen Tag älter ist.

Der Sinn: ich will bestimmte Einträge in einer Datenbank, die älter als einen Tag sind, löschen lassen.

Danke!
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten


Alt 23.12.2001, 13:15   #2
TP-Member
 
Benutzerbild von ¡s¢htar
 
Registriert seit: Dec 2001
Ort: beñztøwn (stuttgart)
¡s¢htar macht alles soweit korrekt
Smile

hallo


Zitat:
Hi,

sagen wir mal, ich hab zwei Variablen mit Datum und Uhrzeit:

$datum1="2001-12-23 06:23:00";
$datum2="2001-12-22 21:22:43";

Wie kann ich jetzt die beiden jetzt "vergleichen"? Ich möchte rauskriegen, dass das 2. Datum halt einen Tag älter ist.

Der Sinn: ich will bestimmte Einträge in einer Datenbank, die älter als einen Tag sind, löschen lassen.

Danke!

hallo Adagio

dazu würde ich die daten erstmal splitten, also:
$tag1 $monat1 $jahr1 && $tag2 $monat2 $jahr2

dann mit schleifen arbeiten:

if ($jahr1>$jahr2) {$jahrdif=($jahr1-jahr2)}
elseif ($jahr1=$jahr2) {$jahrdif=0}
if ($monat1>$monat2) ....

kann jetzt nicht sagen ob die syntax so stimmt, bin c gewöhnt

müsste aber vom prinzip her ähnlich sein.

grüße

¡s¢htar
__________________
¤ wenn ich aufwache möchte ich weiterträumen von den möglichkeiten des lebens...
... es liegt in unserer macht unsere träume zu leben ¤
¡s¢htar ist offline   Mit Zitat antworten
Alt 23.12.2001, 13:28   #3
TP-Supporter
 
Benutzerbild von Howie Munson II
 
Registriert seit: May 2001
Ort: Berlin
Howie Munson II macht alles soweit korrekt
Mach's doch einfach so :

DELETE FROM table WHERE datum < now()

wobei die Spalte Datum im Format DATE sein muss (nicht Timestamp oder etwas mit Zeit)

das Datum kann man auch ganz einfach so in die DB bingen :

INSERT INTO table (...,datum) VALUES (...,NOW())

Da brauch man dann nichts mit PHP programmieren ...
Howie Munson II ist offline   Mit Zitat antworten
Alt 23.12.2001, 16:34   #4
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Nein, das ist eine feste Vorgabe - die Tabellenzelle ist vom Typ DATETIME ... damit muss ich jetzt umgehen ...
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 23.12.2001, 20:40   #5
TP-Supporter
 
Benutzerbild von Howie Munson II
 
Registriert seit: May 2001
Ort: Berlin
Howie Munson II macht alles soweit korrekt
tja, das ist Pech

Also, dann würde ich mit PHP das Datum generieren (in diesem komischen Ami-Format) und folgende Abfrage starten

select * from datum where datum < '2001-12-24'

(wobei 2001-12-24 das von PHP generierte Tagesdatum ist)

das geht auch so bei DATETIME
Howie Munson II ist offline   Mit Zitat antworten
Alt 23.12.2001, 21:11   #6
TP-Greis
 
Benutzerbild von Lars
 
Registriert seit: Jun 2001
Ort: Bonn-Altstadt
Lars bringt sich richtig ein
Mit strtotime() kannst Du Daten ins UNIX-Format (Millisekunden seit 1.1.1970) umrechnen. Das geht zwa auch mit mktime(), aber dafür müssen die Daten in einem festgelegten Format vorliegen.

Mit diesem Script kannst Du feststellen, wiebiel Tage Unterschied zwischen den Daten liegen:

PHP-Code:
$datum1="2001-12-23 06:23:00"
$datum2="2001-12-22 21:22:43"

$differenz strtotime($datum1) - strtotime(datum2);
$differenz $differenz 86400// Erklärung unten 
Die Division durch 86400 rechnet die Tage aus, wenn Du andere Einheiten (Stunden etc.) möchtest, musst einen entsprechend anderen Divisor nehmen.
__________________
Give up yourself into the moment — The time is now.
Lars ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Datum mit anderem Datum vergleichen - Differenz? Datum mit anderem Datum vergleichen - Differenz?
« gästebuch und formmailer | Gibts eine bestimmte der Länge eines Formulares? »

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

Erweiterte Suche
Thema bewerten
Thema bewerten:

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 are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:24 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67