Advanced search  

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Pages: [1]   Go Down

Author Topic: [Solved]: Datumsformat ändern  (Read 6959 times)

0 Members and 1 Guest are viewing this topic.

ManfredK

  • Coppermine novice
  • *
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 29
    • http://fotos-kirchner.at
[Solved]: Datumsformat ändern
« on: May 12, 2008, 08:08:36 pm »

Hallo,
Ich würde gerne das Datumsformat für 'Datum & Uhrzeit Digitaliserung:' (YYYY:MM:DD HH:mm) in ein anderes Datumsformat z.B. DD.MM.JJJJ HH:mm ändern. Wie und wo kann ich dies tun?

Danke für eure Hilfe.
« Last Edit: May 14, 2008, 03:57:22 pm by Joachim Müller »
Logged
LG ;)
Manfred

Joachim Müller

  • Dev Team member
  • Coppermine addict
  • ****
  • Offline Offline
  • Gender: Male
  • Posts: 47843
  • aka "GauGau"
    • gaugau.de
Re: Datumsformat ändern
« Reply #1 on: May 13, 2008, 09:02:34 am »

Alle Datumsformate werden in der Sprachdatei definiert - bearbeite also lang/german.php mit einem Nur-Text Editor. Der Bereich
Code: [Select]
// The various date formats
// See http://www.php.net/manual/en/function.strftime.php to define the variable below
$album_date_fmt =    '%d.%B %Y';
$lastcom_date_fmt =  '%d.%m.%y um %H:%M';
$lastup_date_fmt = '%d.%B %Y';
$register_date_fmt = '%d.%B %Y';
$lasthit_date_fmt = '%d.%B %Y um %H:%M';
$comment_date_fmt =  '%d.%B %Y um %H:%M';
$log_date_fmt = '%d.%B %Y um %H:%M'; //cpg1.4
ist der Teil, den Du bearbeiten musst. Wie im Kommentar angegeben kannst Du die entsprechende Anleitung unter http://www.php.net/manual/en/function.strftime.php ansehen, die Deutsche Version dieser Anleitung ist unter http://www.php.net/manual/de/function.strftime.php zu finden.

Ich befürchte allerdings, dass Du Dich auf ein Exif-Feld beziehst - da ticken die Uhren ein bißchen anders. In der Regel ist das internationale Datumsformat in Deine Exif-Daten direkt eincodiert, so dass Du Deine Dateien vor dem Upload mit einem geeigneten Exif-Tool bearbeiten musst.
Logged

ManfredK

  • Coppermine novice
  • *
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 29
    • http://fotos-kirchner.at
Re: Datumsformat ändern
« Reply #2 on: May 13, 2008, 05:22:52 pm »

Ich befürchte allerdings, dass Du Dich auf ein Exif-Feld beziehst - da ticken die Uhren ein bißchen anders. In der Regel ist das internationale Datumsformat in Deine Exif-Daten direkt eincodiert, so dass Du Deine Dateien vor dem Upload mit einem geeigneten Exif-Tool bearbeiten musst.
Hallo Joachim,
Besten Dank für deine Antwort.
Es ist leider in der Tat so, dass ich das Format eines Exif-Feldes ändern will.

Es muss doch auch eine andere Möglichkeit geben, das Datumsformat ohne Änderung der Exif anders darzustellen. Jemand eine Idee?

LG ;)
Manfred
Logged
LG ;)
Manfred

Αndré

  • Administrator
  • Coppermine addict
  • ****
  • Country: de
  • Offline Offline
  • Gender: Male
  • Posts: 15764
Re: Datumsformat ändern
« Reply #3 on: May 14, 2008, 09:40:19 am »

Mit nem http://de2.php.net/manual/de/function.preg-match-all.php an der geeigneten Stelle, duerfte das doch kein Problem sein, oder?
Also den String vor der Ausgabe jedes mal verarbeiten.. habe mal ne entsprechende Routine gebastelt:
Code: [Select]
<?php
$ursprungsformat 
"2008:05:14 09:35"// = YYYY:MM:DD HH:mm
preg_match_all('/\d+/'$ursprungsformat$temp);
$wunschformat $temp[0][2].".".$temp[0][1].".".$temp[0][0]." ".$temp[0][3].":".$temp[0][4]; // = DD.MM.JJJJ HH:mm

echo "Urprungsformat: $ursprungsformat <br /> Wunschformat: $wunschformat";
?>

Ausgabe:
Quote
Urprungsformat: 2008:05:14 09:35
Wunschformat: 14.05.2008 09:35


-
muu
Logged

ManfredK

  • Coppermine novice
  • *
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 29
    • http://fotos-kirchner.at
Re: Datumsformat ändern
« Reply #4 on: May 14, 2008, 11:10:49 am »

Hallo,
Danke für deine Antwort.

nur wenn...
an der geeigneten Stelle
...die geeignete Stelle so leicht zu finden wäre.

LG
Manfred
Logged
LG ;)
Manfred

Αndré

  • Administrator
  • Coppermine addict
  • ****
  • Country: de
  • Offline Offline
  • Gender: Male
  • Posts: 15764
Re: Datumsformat ändern
« Reply #5 on: May 14, 2008, 11:21:10 am »

Wenn es um die Ausgabe der Datei-Informationen unter einem Bild geht, musst du mal in die Datei "displayimage.php" reinschaun.. dort gibts eine Stelle
Code: [Select]
    if (isset($exif) && is_array($exif)) {
array_walk($exif, 'sanitize_data');
        $info = array_merge($info,$exif);
.. dort werden meines Erachtens die Exif-Daten ausgelesen.. mit nem print_r($info) könntest du herausfinden welchen Wert du aus dem Array bearbeiten musst


-
muu
Logged

ManfredK

  • Coppermine novice
  • *
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 29
    • http://fotos-kirchner.at
Re: Datumsformat ändern
« Reply #6 on: May 14, 2008, 11:54:33 am »

Wenn es um die Ausgabe der Datei-Informationen unter einem Bild geht, musst du mal in die Datei "displayimage.php" reinschaun.. dort gibts eine Stelle
Code: [Select]
    if (isset($exif) && is_array($exif)) {
array_walk($exif, 'sanitize_data');
        $info = array_merge($info,$exif);
.. dort werden meines Erachtens die Exif-Daten ausgelesen.. mit nem print_r($info) könntest du herausfinden welchen Wert du aus dem Array bearbeiten musst


-
muu
Hallo,
Noch einmal besten Dank, aber anscheinend bin ich zu doof  :(.
Ich habe keine Ahnung, was ich wo hinschreiben muss.
um diese beiden Tags handelt es sich:
Code: [Select]
    case "9003": $tag = "DateTimeOriginal"       //DD.MM.YYYY HH:MM:SS
    case "9004": $tag = "DateTimedigitized"        //DD.MM.YYYY HH:MM:SS

Also wenn du noch ausreichend Geduld hast, noch einmal für blutige Anfänger.

LG ;)
Manfred
Logged
LG ;)
Manfred

Αndré

  • Administrator
  • Coppermine addict
  • ****
  • Country: de
  • Offline Offline
  • Gender: Male
  • Posts: 15764
Re: Datumsformat ändern
« Reply #7 on: May 14, 2008, 12:13:28 pm »

Um bei meinem Ansatz zu bleiben: schau in die Datei "displayimage.php" und suche folgende Stelle:
Code: [Select]
    if (isset($exif) && is_array($exif)) {
array_walk($exif, 'sanitize_data');
        $info = array_merge($info,$exif);
    }

an dieser Stelle wurde das "info"-Array mit den exif-Daten gefüllt.. jetzt könntest du einfach das entsprechende Feld auslesen und bearbeiten.. hier am Beispiel von "Datum & Uhrzeit Digitaliserung":
Code: [Select]
    preg_match_all('/\d+/', $info['Datum & Uhrzeit Digitaliserung'], $temp);
    $info['Datum & Uhrzeit Digitaliserung'] = $temp[0][2].".".$temp[0][1].".".$temp[0][0]." ".$temp[0][3].":".$temp[0][4];

wenn du diesen Code hinter die erwähnte Stelle schreibst hast du deine gewünschte Ausgabe (bei meinem Beispielbild steht jetzt: "Datum & Uhrzeit Digitaliserung:   29.07.2005 15:00")

mit "Datum & Uhrzeit Original" geht das genauso..

der gesamte Code dafür wäre dann folgender:

Code: [Select]
    if (isset($exif) && is_array($exif)) {
array_walk($exif, 'sanitize_data');
        $info = array_merge($info,$exif);
    }

    preg_match_all('/\d+/', $info['Datum & Uhrzeit Digitaliserung'], $temp);
    $info['Datum & Uhrzeit Digitaliserung'] = $temp[0][2].".".$temp[0][1].".".$temp[0][0]." ".$temp[0][3].":".$temp[0][4];

    preg_match_all('/\d+/', $info['Datum & Uhrzeit Original'], $temp);
    $info['Datum & Uhrzeit Original'] = $temp[0][2].".".$temp[0][1].".".$temp[0][0]." ".$temp[0][3].":".$temp[0][4];


ist zwar etwas zusammengefrickelt, funktioniert auch nur in einer deutschen Galerie, aber ich denke sowas in der Art wolltest du haben :)



mfg
muu
Logged

ManfredK

  • Coppermine novice
  • *
  • Country: 00
  • Offline Offline
  • Gender: Male
  • Posts: 29
    • http://fotos-kirchner.at
Re: Datumsformat ändern
« Reply #8 on: May 14, 2008, 12:36:00 pm »

Hallo,
Mein Fehler war, dass ich immer das '$info' vergessen habe *kopfschüttel*.
Jetzt funktioniert es. Besten Dank noch einmal.

*Problem gelöst*.
Logged
LG ;)
Manfred
Pages: [1]   Go Up
 

Page created in 0.025 seconds with 20 queries.