[TYPO3-german] BE List module akzeptiert kein Datum von z.B. 1-1-1800

Stefan Neufeind typo3.neufeind at speedpartner.de
Wed Mar 26 10:07:19 CET 2014


Hallo,

auf einem 64-Bit-System lassen sich long-integer für die Unix-Timestamps
nutzen. Hierzu kannst du den MySQL-Typ des Geburtstagsfeldes umsetzen.
Alternativ kannst du im Extensionbuilder auch den Typ "native date"
nutzen, was dann dem erwähnten MySQL-Datum entspricht.

Das Datumsfeld ist allerdings auch noch im Backend-JavaScript auf 1901
bis 2038 begrenzt - das findet sich in einem TYPO3 6.1.7 unter:
t3lib/jsfunc.evalfield.js

Ein paar Haken gibts noch im Detail, aber grundsätzlich funktioniert es.


Grüße,
 Stefan

On 03/26/2014 09:58 AM, Laurie wrote:
> Ach, ja - klar.
> Vielen Dank Bernd.
> 
> Am 26.03.14 09:00, schrieb bernd wilke:
>> Am 25.03.14 18:57, schrieb Laurie:
>>> Hallo Alle,
>>> ich habe eine Extension im Extension Builder angelegt.
>>> Wenn ich in die Datumsfelder mit Datepicker im list modul ein Datum in
>>> der Vergangenheit eingebe wird das Datum auf 1-1-2014 zurückgesetzt.
>>>
>>> TCA:
>>>          'date_birth' => array(
>>>              'exclude' => 0,
>>>              'label' => 'Date of Birth',
>>>              'config' => array(
>>>                  'type' => 'input',
>>>                  'size' => 7,
>>>                  'eval' => 'date',
>>>                  'checkbox' => 1,
>>>                  'default' => time()
>>>              ),
>>>          ),
>>>
>>>
>>> Typo3 6.1.7
>>
>> ein Datum wird in TYPO3 normalerweise als unixtime = sekunden seit
>> 1.1.1970 0:00 angelegt.
>> Vorteile:
>> + damit läßt sich einfach ein größer kleiner Vergleich durchführen
>> + man kann mal eben delta-Zeiten (+1 Std, -3 Tage, ...) berechnen
>> Nachteil:
>> - je nach Rechner, Programmiersprache und zugrundeliegendem
>> Integer-Format ein eingeschränkter Zeitbereich.
>> - zur Darstellung muss immer konvertiert werden
>>
>> bei 32 Bit vorzeichenbehaftet reicht  es für Daten (Datum plural) von
>> 13. Dezember 1901 20:45:52 bis 19. Januar 2038 um 3:14:08 Uhr
>>
>> was darüber hinaus geht muss entweder mit größeren Zahlen (da spielen
>> default nicht alle Routinen mit) oder mit anderen Formaten abgespeichert
>> werden.
>>
>> mySQL kennt ein echtes Date-format, in dem tag, monat,jahr als
>> individuelle Zahlen gespeichert werden, so dass ein viel größerer
>> Datumsbereich abgedeckt ist. Dafür gibt es in TYPO3 aber kein fertiges
>> Format. Entweder du arbeitest mit drei String Feldern oder (bei Nutzung
>> von Extbase) benutzt eigene Getter, Setter und Eingabevalidierungen. bei
>> letzterem können dir neuere Browser und HTML5 helfen.
>>
>> bernd


More information about the TYPO3-german mailing list