SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #11  
Alt 29.10.2006, 01:04:59
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: mktime vor 1.1.1970

Zitat:
Zitat von Heinrich Beitrag anzeigen
Ich speichere das logischerweise auch in der Datenbank. Nur vorher müssen einige Berechnungen durchgeführt werden (Einteilung der Leute in Altersklassen).
Eben mal getestet (MySQL - 5.0.22 + MySQL 4.0.15):
Code:
SELECT '2006-10-29' - '1948-09-21'
Ausgabe:
Code:
58
Zufall?

Geändert von meikel (†) (29.10.2006 um 01:05:26 Uhr)
Mit Zitat antworten
  #12  
Alt 29.10.2006, 10:23:24
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: mktime vor 1.1.1970

Zitat:
Zitat von meikel Beitrag anzeigen
Zufall?
Ernstgemeinte Frage?
Mit Zitat antworten
  #13  
Alt 29.10.2006, 12:10:15
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: mktime vor 1.1.1970

Zitat:
Zitat von xabbuh Beitrag anzeigen
Ernstgemeinte Frage?
Nein. <g>
Wenn mich nicht alles täuscht, wurde das Thema "Altersberechnung mit SQL" hier mal behandelt.

Man (ich nicht. ich weiß, wie alt ich bin) könnte ja theoretisch das mal testen:
Code:
SELECT ROUND( DATEDIFF( '2006-10-29', '1948-09-21' ) / 365.25 )

Geändert von meikel (†) (29.10.2006 um 12:20:56 Uhr)
Mit Zitat antworten
  #14  
Alt 29.10.2006, 16:25:12
Heinrich Heinrich ist offline
Member
 
Registriert seit: Feb 2006
Beiträge: 883
AW: mktime vor 1.1.1970

Hi Meikel,

natürlich geht das in MySQL - hatte ich nie bestritten. Es geht aber um 2 Schritte:
- das Alter zu berechnen und
- diese Person (Feriengast) drei Altersgruppen (0-6, 7-14, über 14) zuzuordnen.

Das kriegst du ja nicht mit einem SQL-Statement in die DB, wenn dort erst das Geburtsdatum eingetragen sein muss, um das Alter berechnen zu können. Also müsstest du zuerst eintrage, dann auslesen und wieder eintragen (die Zuordnung). Da ist's auch nicht komplizierter, das vorher mit PHP zu berechnen und in einem Rutsch in die DB einzutragen.

Festhalten will ich, dass PHP sehr wohl mit einem Timestamp vor dem 1.1.1970 rechnen kann.

Gruß
Heinrich
Mit Zitat antworten
  #15  
Alt 29.10.2006, 18:24:55
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: mktime vor 1.1.1970

Zitat:
Zitat von Heinrich Beitrag anzeigen
Das kriegst du ja nicht mit einem SQL-Statement in die DB, wenn dort erst das Geburtsdatum eingetragen sein muss, um das Alter berechnen zu können.
Das könntest Du auch in einem Aufwasch erledigen:
INSERT INTO tabelle (...) VALUES ( ... berechnung ...)

Da Du aber eh die Daten für die SQL Abfrage aufbereiten mußt, kannste Dir das mal angucken:
http://test.php-help.info/age/index.php

Der Algorithmus arbeitet bis in alle Ewigkeiten:
1. Differenz der Jahreszahlen bilden
2. nachgucken, ob der Betreffende schon Geburtstag hatte. Falls nicht, dann isser ein Jahr jünger.

Zitat:
Festhalten will ich, dass PHP sehr wohl mit einem Timestamp vor dem 1.1.1970 rechnen kann.
Das ist systemabhängig und somit unzuverlässig. Timestamp ist eine vorzeichenlose Integerzahl. Der Wert beginnt mit 0x0 und endet mit 0xFFFFFFFF. Und hoffentlich lassen die sich da rechtzeitig eine Erweiterung einfallen, weil mich sonst meine Server zweitausendpaarunddreißig mit der Meldung überraschen würde, es wäre der 1.1.1970 nachts um 1:00. Allerdings werde ich das wohl nicht mehr erleben... 58+31=89 Jahre.

Alle anderen Überraschungen sahen allerdings so aus, daß Datumsberechnungen auf Timestampbasis einige unangenehme Begleiterscheinungen hatten, die zT. mit der Sommerzeit zusammenhingen. Seitdem lasse ich MySQL sowas ausrechnen.
Mit Zitat antworten
  #16  
Alt 29.10.2006, 18:42:02
Heinrich Heinrich ist offline
Member
 
Registriert seit: Feb 2006
Beiträge: 883
AW: mktime vor 1.1.1970

Hi Meikel,

danke für die Tipps! Werde beim nächsten Mal die verschiedenen Wege, die zum Ziel führen, testen.

Und im Jahr 2038 trinken wir einen.

Gruß
Heinrich
Mit Zitat antworten
Antwort


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

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

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

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mktime vor 1.1.1970 geht beim IE6, bei Oera + FF nicht wundi PHP Grundlagen 2 23.07.2006 01:54:48
Ein Problem mit mktime(), das nicht an der 0 liegt Abhorash PHP Grundlagen 1 17.05.2006 16:22:31
mktime() thorben PHP Grundlagen 2 24.03.2006 17:46:58
mktime Problem Soeren PHP Grundlagen 4 23.08.2005 23:08:16
mktime & date Walter PHP für Fortgeschrittene und Experten 1 03.05.2002 19:00:56


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


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt