+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 15 von 17

Thema: IPTC Daten von JPGs auslesen

  1. #1
    TP-Moderator StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE Avatar von StephanF
    Registriert seit
    Feb 2003
    Ort
    Erfurt
    Beiträge
    1.217

    IPTC Daten von JPGs auslesen

    Tach an alle,
    da ich mich grad mit diesem Thema rumärgern muss, hier mal ne kleine Funktion mit der die wichtigsten Angaben aus einer JPG-Datei mit PHP ausgelesen werden können. Natürlich müssen die Bilder auch über diese Angaben verfügen. Außer Photoshop und anderen teuren Progs gibts da z.B. auch XnView als Freeware für Win. Mit diesem Tool lassen sich kinderleicht Bilder mit EXIF und ITPC Daten füttern. PHP kann hier aber nur JPG-Dateien auslesen. Bitte mich korrigieren, wenns da noch mehr gibt.
    Die Funktion:
    PHP-Code:
    function holeIPTCdaten$bild$echoAusgabe ) {   
            
    $size getimagesize ($bild, &$info);  
                if ( !empty(
    $info["APP13"])) {  
                    
    $iptc iptcparse($info["APP13"]);  
                    
                    if(!empty(
    $iptc["2#000"])) {$iptc_RecordVersion $iptc["2#000"][0]; } else {$iptc_RecordVersion "k.A.";};
                    if(!empty(
    $iptc["2#005"])) {$iptc_Objektname $iptc["2#005"][0]; } else {$iptc_Objektname "k.A.";};
                    if(!empty(
    $iptc["2#007"])) {$iptc_Bearbeitungssattus $iptc["2#007"][0]; } else {$iptc_Bearbeitungssattus "k.A.";};
                    if(!empty(
    $iptc["2#010"])) {$iptc_Dringlichkeit $iptc["2#010"][0]; } else {$iptc_Dringlichkeit "k.A.";};        
                    if(!empty(
    $iptc["2#015"])) {$iptc_Kategorie $iptc["2#015"][0]; } else {$iptc_Kategorie "k.A.";};        
                    if(!empty(
    $iptc["2#020"])) {$iptc_Zusatzkategorien implode(", ",$iptc["2#020"]); } else {$iptc_Zusatzkategorien "k.A.";};// Hier Aufpassen        
                    
    if(!empty($iptc["2#022"])) {$iptc_JobID $iptc["2#022"][0]; } else {$iptc_JobID "k.A.";};        
                    if(!empty(
    $iptc["2#025"])) {$iptc_Stichworte implode(", ",$iptc["2#025"]); } else {$iptc_Stichworte "k.A.";}; // Hier aufpassen        
                    
    if(!empty($iptc["2#027"])) {$iptc_Kontaktstelle implode(" ",$iptc["2#027"]); } else {$iptc_Kontaktstelle "k.A.";};    // Hier aufpassen        
                    
    if(!empty($iptc["2#055"])) {$iptc_ErstelltAmTag $iptc["2#055"][0]; } else {$iptc_ErstelltAmTag "k.A.";};        
                    if(!empty(
    $iptc["2#060"])) {$iptc_ErstelltAmUhrzeit $iptc["2#060"][0]; } else {$iptc_ErstelltAmUhrzeit "k.A.";};        
                    if(!empty(
    $iptc["2#065"])) {$iptc_Programm $iptc["2#065"][0]; } else {$iptc_Programm "k.A.";};        
                    if(!empty(
    $iptc["2#070"])) {$iptc_Programmversion $iptc["2#070"][0]; } else {$iptc_Programmversion "k.A.";};        
                    if(!empty(
    $iptc["2#075"])) {$iptc_Objektzyklus $iptc["2#075"][0]; } else {$iptc_Objektzyklus "k.A.";};        
                    if(!empty(
    $iptc["2#080"])) {$iptc_NamedesAutors $iptc["2#080"][0]; } else {$iptc_NamedesAutors "k.A.";};        
                    if(!empty(
    $iptc["2#085"])) {$iptc_TiteldesAutors $iptc["2#085"][0]; } else {$iptc_TiteldesAutors "k.A.";};        
                    if(!empty(
    $iptc["2#090"])) {$iptc_Stadt $iptc["2#090"][0]; } else {$iptc_Stadt "k.A.";};        
                    if(!empty(
    $iptc["2#092"])) {$iptc_Region $iptc["2#092"][0]; } else {$iptc_Region "k.A.";};        
                    if(!empty(
    $iptc["2#095"])) {$iptc_Bundesland $iptc["2#095"][0]; } else {$iptc_Bundesland "k.A.";};        
                    if(!empty(
    $iptc["2#100"])) {$iptc_Laendercode $iptc["2#100"][0]; } else {$iptc_Laendercode "k.A.";};        
                    if(!empty(
    $iptc["2#101"])) {$iptc_Laendername $iptc["2#101"][0]; } else {$iptc_Laendername "k.A.";};        
                    if(!empty(
    $iptc["2#103"])) {$iptc_Auftraggeber $iptc["2#103"][0]; } else {$iptc_Auftraggeber "k.A.";};        
                    if(!empty(
    $iptc["2#105"])) {$iptc_Ueberschrift $iptc["2#105"][0]; } else {$iptc_Ueberschrift "k.A.";};        
                    if(!empty(
    $iptc["2#110"])) {$iptc_Bildrechte $iptc["2#110"][0]; } else {$iptc_Bildrechte "k.A.";};        
                    if(!empty(
    $iptc["2#115"])) {$iptc_Quelle $iptc["2#115"][0]; } else {$iptc_Quelle "k.A.";};        
                    if(!empty(
    $iptc["2#116"])) {$iptc_Copyright $iptc["2#116"][0]; } else {$iptc_Copyright "k.A.";};        
                    if(!empty(
    $iptc["2#118"])) {$iptc_Kontakt implode(" ",$iptc["2#118"]); } else {$iptc_Kontakt "k.A.";}; // Hier aufpassen        
                    
    if(!empty($iptc["2#120"])) {$iptc_Objektbeschreibung $iptc["2#120"][0]; } else {$iptc_Objektbeschreibung "k.A.";};        
                    if(!empty(
    $iptc["2#122"])) {$iptc_Autor $iptc["2#122"][0]; } else {$iptc_Autor "k.A.";};                
               } 
    //Der Mac macht manchmal komische Umlaute, diese werden dann ersetzt        
    $iptc_ersetzen = array('§' => 'ß''«' => '´''…' => 'Ö','†' => 'Ü','€' => 'Ä','š' => 'ö','Ÿ' => 'ü''Š' => 'ä','Ð' => '-' '' => ' ' );

    $iptc_RecordVersion strtr($iptc_RecordVersion$iptc_ersetzen);
    $iptc_Objektname strtr($iptc_Objektname$iptc_ersetzen);
    $iptc_Stichworte strtr($iptc_Stichworte$iptc_ersetzen);
    $iptc_Ueberschrift strtr($iptc_Ueberschrift$iptc_ersetzen);
    $iptc_Objektbeschreibung strtr($iptc_Objektbeschreibung$iptc_ersetzen);
    //Anwenden z.B.
    //$DateiName = strtr( strtolower( $_FILES['bilddatei']['name'] ), $ersetzen );
    if($echoAusgabe){
                echo 
    "
                    <table border='0'>
                        <tr><td>2#000</td><td><strong>RecordVersion</strong></td><td>$iptc_RecordVersion</td></tr>
                        <tr><td>2#005</td><td><strong>Objektname</strong></td><td>$iptc_Objektname</td></tr>
                        <tr><td>2#007</td><td><strong>Bearbeitungssattus</strong></td><td>$iptc_Bearbeitungssattus</td></tr>
                        <tr><td>2#010</td><td><strong>Dringlichkeit</strong></td><td>$iptc_Dringlichkeit</td></tr>
                        <tr><td>2#015</td><td><strong>Kategorie</strong></td><td>$iptc_Kategorie</td></tr>
                        <tr><td>2#020</td><td><strong>Zusatzkategorien</strong></td><td>$iptc_Zusatzkategorien</td></tr>
                        <tr><td>2#022</td><td><strong>JobID</strong></td><td>$iptc_JobID</td></tr>
                        <tr><td>2#025</td><td><strong>Stichworte</strong></td><td>$iptc_Stichworte</td></tr>
                        <tr><td>2#027</td><td><strong>Kontaktstelle</strong></td><td>$iptc_Kontaktstelle</td></tr>
                        <tr><td>2#055</td><td><strong>Erstellt am  (Tag)</strong></td><td>$iptc_ErstelltAmTag</td></tr>
                        <tr><td>2#060</td><td><strong>Erstellt am  (Zeit)</strong></td><td>$iptc_ErstelltAmUhrzeit</td></tr>
                        <tr><td>2#065</td><td><strong>Programm</strong></td><td>$iptc_Programm</td></tr>
                        <tr><td>2#070</td><td><strong>Programmversion</strong></td><td>$iptc_Programmversion</td></tr>
                        <tr><td>2#075</td><td><strong>Objektzyklus</strong></td><td>$iptc_Objektzyklus</td></tr>
                        <tr><td>2#080</td><td><strong>Name des Autors</strong></td><td>$iptc_NamedesAutors</td></tr>
                        <tr><td>2#085</td><td><strong>Titel des Autors</strong></td><td>$iptc_TiteldesAutors</td></tr>
                        <tr><td>2#090</td><td><strong>Stadt</strong></td><td>$iptc_Stadt</td></tr>
                        <tr><td>2#092</td><td><strong>Region</strong></td><td>$iptc_Region</td></tr>
                        <tr><td>2#095</td><td><strong>Bundesland</strong></td><td>$iptc_Bundesland</td></tr>
                        <tr><td>2#100</td><td><strong>Laendercode</strong></td><td>$iptc_Laendercode</td></tr>
                        <tr><td>2#101</td><td><strong>Laendername</strong></td><td>$iptc_Laendername</td></tr>
                        <tr><td>2#103</td><td><strong>Auftraggeber</strong></td><td>$iptc_Auftraggeber</td></tr>
                        <tr><td>2#105</td><td><strong>Ueberschrift</strong></td><td>$iptc_Ueberschrift</td></tr>
                        <tr><td>2#110</td><td><strong>Bildrechte</strong></td><td>$iptc_Bildrechte</td></tr>
                        <tr><td>2#115</td><td><strong>Quelle</strong></td><td>$iptc_Quelle</td></tr>
                        <tr><td>2#116</td><td><strong>Copyright</strong></td><td>$iptc_Copyright</td></tr>
                        <tr><td>2#118</td><td><strong>Kontakt</strong></td><td>$iptc_Kontakt</td></tr>
                        <tr><td>2#120</td><td><strong>Objektbeschreibung</strong></td><td>$iptc_Objektbeschreibung</td></tr>
                        <tr><td>2#122</td><td><strong>Autor</strong></td><td>$iptc_Autor</td></tr>
                    </table>"
    ;
    }
    // ENDE if($echoAusgabe){
            

    Der Funktionsaufruf
    PHP-Code:
    $bild "meinPassbild.jpg";
    holeIPTCdaten($bildtrue); 
    Erster Parameter ist das Bild, wer häts gedacht,
    der zweite Parameter, ob man die Echo-Ausgabe haben will(true), oder(false) wenn die Tags einfach nur in ne DB reingeschrieben werden sollen.
    Fragt mich bitte nicht was APP13 ist, und was es da sonst noch gibt. Da hab ich noch keinen Dunst von
    Geändert von StephanF (12.09.2007 um 13:06 Uhr) Grund: vertippselt
    Schöne Grüße aus Thüringen
    Stephan Page

    Stell Dir vor, hier steht was und keiner liest es!! schon entdeckt?? F1 ist ne geile Taste
    Ich beantworte keine E-Mails. Bitte alle Fragen ins Forum

    schon gehört??? Das Internet ist voll, die lassen keinen mehr rein!!

  2. #2
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    Vielen Dank.

    vielleicht noch ganz nützlich hierzu:
    http://www.pixafe.com/hilfe/iptc.htm


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  3. #3

  4. #4
    jph
    jph ist offline
    TP-Veteran jph ist auf einem guten Weg Avatar von jph
    Registriert seit
    Apr 2001
    Beiträge
    1.577
    Hi,

    ich bekomme folgende Fehlermeldung:

    Warning: Call-time pass-by-reference has been deprecated; If you would like to pass it by reference, modify the declaration of getimagesize(). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. in /is/htdocs/wp1082333_T9ADT7A4MD/www/wordpress/iptc.php on line 7

    Das ganze liegt auf dem Server meines Provider, wo ich nicht auf die INI-Datei zugreifen kann. Was kann ich machen?

    Grüße

    Jan

  5. #5
    TP-Moderator StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE StephanF ist ein richtiges Arbeitstier - DANKE Avatar von StephanF
    Registriert seit
    Feb 2003
    Ort
    Erfurt
    Beiträge
    1.217
    Kann ich mir kaum vorstellen, da allow_call_time_pass_reference standardmäßig auf ON sein sollte.
    Probier doch mal ini_set() vor Deinem Script einzusetzen.
    PHP-Code:
     ini_set('allow_call_time_pass_reference''ON'); 
    Ist nur ein Versuch, habe mit Server nicht so viel am Hut.
    Schöne Grüße aus Thüringen
    Stephan Page

    Stell Dir vor, hier steht was und keiner liest es!! schon entdeckt?? F1 ist ne geile Taste
    Ich beantworte keine E-Mails. Bitte alle Fragen ins Forum

    schon gehört??? Das Internet ist voll, die lassen keinen mehr rein!!

  6. #6
    TP-Veteran Guin ist ein richtiges Arbeitstier - DANKE Guin ist ein richtiges Arbeitstier - DANKE Guin ist ein richtiges Arbeitstier - DANKE Guin ist ein richtiges Arbeitstier - DANKE Guin ist ein richtiges Arbeitstier - DANKE Avatar von Guin
    Registriert seit
    Nov 2006
    Ort
    Nordholz
    Beiträge
    1.686
    Moin,
    da es auch keine Fehlermeldung ist sondern nur eine Warnug, kann man das eigentlich auch ignorieren.

    http://de.php.net/manual/de/ref.errorfunc.php
    PHP-Code:
    error_reporting(E_ALL E_NOTICE E_WARNING); 
    Gruss Guin
    Mein Blog

  7. #7
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    Gibt es eine Möglichkeit nur bestimmte EXIF-Daten auszulesen und anzeigen zu lassen?

    Ich würde gern nur die Brennweite, die Blende und die Verschlusszeit anzeigen lassen.
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  8. #8
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    Vielen Dank Ingo - da habe ich wohl in der Tat etwas verwechselt
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  9. #9
    TP-Urgestein webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts Avatar von webcreate
    Registriert seit
    Nov 2003
    Ort
    NRW
    Beiträge
    11.660
    Hier was zu Exif (nochmals überarbeitet):
    PHP-Code:
    <?php
    function bruch($value)
    {
        
    $val explode('/'$value);
        return 
    $val $val[0] / $val[1];
    }

    function 
    bruch2($value)
    {
            
    $val explode('/'$value);
            if(
    $val[0]%10 == 0){
                
    $val[1] = $val[1] / $val[0];
                
    $val[0] = $val[0] / $val[0];
                return 
    $val[0].'/'.$val[1];
            }
            else if(
    $val[0] > $val[1]){
                return 
    $val[0] / $val[1];
            }
            else return 
    $value;
    }

    function 
    getEXIF($image)
    {
        
    $exif exif_read_data($image0true);
        foreach (
    $exif as $key => $section){
            if(
    $key 'EXIF'){
                
    $exifData = array();
                foreach (
    $section as $name => $val) {
                    if(
    $name == 'FNumber'$exifData[] = "Blende: ".bruch($val)."<br />\n";
                    if(
    $name == 'ExposureTime'$exifData[] = "Verschlusszeit: ".bruch2($val)." s<br />\n";
                    if(
    $name == 'FocalLength'$exifData[] = "Brennweite: ".bruch($val)." mm<br />\n";
                }
            }
        }
        return 
    $exifData;
    }

    $exif getEXIF('bild.jpg');
    foreach(
    $exif as $ausgabe) echo $ausgabe;
    ?>
    Und hier eine Überarbeitung von Stephans Script
    PHP-Code:
    <?php
    function holeIPTCdaten$bild$echoAusgabe ) {   
        
    $size getimagesize ($bild, &$info);  
        if ( !empty(
    $info["APP13"])) {  
            
    $iptc iptcparse($info["APP13"]);  
            
            if(!empty(
    $iptc["2#000"])) {$iptc_RecordVersion $iptc["2#000"][0]; } else {$iptc_RecordVersion "k.A.";};
            if(!empty(
    $iptc["2#005"])) {$iptc_Objektname $iptc["2#005"][0]; } else {$iptc_Objektname "k.A.";};
            if(!empty(
    $iptc["2#007"])) {$iptc_Bearbeitungssattus $iptc["2#007"][0]; } else {$iptc_Bearbeitungssattus "k.A.";};
            if(!empty(
    $iptc["2#010"])) {$iptc_Dringlichkeit $iptc["2#010"][0]; } else {$iptc_Dringlichkeit "k.A.";};        
            if(!empty(
    $iptc["2#015"])) {$iptc_Kategorie $iptc["2#015"][0]; } else {$iptc_Kategorie "k.A.";};        
            if(!empty(
    $iptc["2#020"])) {$iptc_Zusatzkategorien implode(", ",$iptc["2#020"]); } else {$iptc_Zusatzkategorien "k.A.";};// Hier Aufpassen        
            
    if(!empty($iptc["2#022"])) {$iptc_JobID $iptc["2#022"][0]; } else {$iptc_JobID "k.A.";};        
            if(!empty(
    $iptc["2#025"])) {$iptc_Stichworte implode(", ",$iptc["2#025"]); } else {$iptc_Stichworte "k.A.";}; // Hier aufpassen        
            
    if(!empty($iptc["2#027"])) {$iptc_Kontaktstelle implode(" ",$iptc["2#027"]); } else {$iptc_Kontaktstelle "k.A.";};    // Hier aufpassen        
            
    if(!empty($iptc["2#055"])) {$iptc_ErstelltAmTag $iptc["2#055"][0]; } else {$iptc_ErstelltAmTag "k.A.";};        
            if(!empty(
    $iptc["2#060"])) {$iptc_ErstelltAmUhrzeit $iptc["2#060"][0]; } else {$iptc_ErstelltAmUhrzeit "k.A.";};        
            if(!empty(
    $iptc["2#065"])) {$iptc_Programm $iptc["2#065"][0]; } else {$iptc_Programm "k.A.";};        
            if(!empty(
    $iptc["2#070"])) {$iptc_Programmversion $iptc["2#070"][0]; } else {$iptc_Programmversion "k.A.";};        
            if(!empty(
    $iptc["2#075"])) {$iptc_Objektzyklus $iptc["2#075"][0]; } else {$iptc_Objektzyklus "k.A.";};        
            if(!empty(
    $iptc["2#080"])) {$iptc_NamedesAutors $iptc["2#080"][0]; } else {$iptc_NamedesAutors "k.A.";};        
            if(!empty(
    $iptc["2#085"])) {$iptc_TiteldesAutors $iptc["2#085"][0]; } else {$iptc_TiteldesAutors "k.A.";};        
            if(!empty(
    $iptc["2#090"])) {$iptc_Stadt $iptc["2#090"][0]; } else {$iptc_Stadt "k.A.";};        
            if(!empty(
    $iptc["2#092"])) {$iptc_Region $iptc["2#092"][0]; } else {$iptc_Region "k.A.";};        
            if(!empty(
    $iptc["2#095"])) {$iptc_Bundesland $iptc["2#095"][0]; } else {$iptc_Bundesland "k.A.";};        
            if(!empty(
    $iptc["2#100"])) {$iptc_Laendercode $iptc["2#100"][0]; } else {$iptc_Laendercode "k.A.";};        
            if(!empty(
    $iptc["2#101"])) {$iptc_Laendername $iptc["2#101"][0]; } else {$iptc_Laendername "k.A.";};        
            if(!empty(
    $iptc["2#103"])) {$iptc_Auftraggeber $iptc["2#103"][0]; } else {$iptc_Auftraggeber "k.A.";};        
            if(!empty(
    $iptc["2#105"])) {$iptc_Ueberschrift $iptc["2#105"][0]; } else {$iptc_Ueberschrift "k.A.";};        
            if(!empty(
    $iptc["2#110"])) {$iptc_Bildrechte $iptc["2#110"][0]; } else {$iptc_Bildrechte "k.A.";};        
            if(!empty(
    $iptc["2#115"])) {$iptc_Quelle $iptc["2#115"][0]; } else {$iptc_Quelle "k.A.";};        
            if(!empty(
    $iptc["2#116"])) {$iptc_Copyright $iptc["2#116"][0]; } else {$iptc_Copyright "k.A.";};        
            if(!empty(
    $iptc["2#118"])) {$iptc_Kontakt implode(" ",$iptc["2#118"]); } else {$iptc_Kontakt "k.A.";}; // Hier aufpassen        
            
    if(!empty($iptc["2#120"])) {$iptc_Objektbeschreibung $iptc["2#120"][0]; } else {$iptc_Objektbeschreibung "k.A.";};        
            if(!empty(
    $iptc["2#122"])) {$iptc_Autor $iptc["2#122"][0]; } else {$iptc_Autor "k.A.";};                
        } 
        
    //Der Mac macht manchmal komische Umlaute, diese werden dann ersetzt        
        
    $iptc_ersetzen = array('§' => 'ß''«' => '´''…' => 'Ö','†' => 'Ü','€' => 'Ä','š' => 'ö','Ÿ' => 'ü''Š' => 'ä','Ð' => '-' '' => ' ' );
        
        
    $iptc_RecordVersion strtr($iptc_RecordVersion$iptc_ersetzen);
        
    $iptc_Objektname strtr($iptc_Objektname$iptc_ersetzen);
        
    $iptc_Stichworte strtr($iptc_Stichworte$iptc_ersetzen);
        
    $iptc_Ueberschrift strtr($iptc_Ueberschrift$iptc_ersetzen);
        
    $iptc_Objektbeschreibung strtr($iptc_Objektbeschreibung$iptc_ersetzen);
        
    //Anwenden z.B.
        //$DateiName = strtr( strtolower( $_FILES['bilddatei']['name'] ), $ersetzen );
        
    if($echoAusgabe){
            
    $info_arr = array(
            
    => "<tr><td>2#000</td><td><strong>RecordVersion</strong></td><td>$iptc_RecordVersion</td></tr>",
            
    => "<tr><td>2#005</td><td><strong>Objektname</strong></td><td>$iptc_Objektname</td></tr>",
            
    => "<tr><td>2#007</td><td><strong>Bearbeitungssattus</strong></td><td>$iptc_Bearbeitungssattus</td></tr>",
            
    => "<tr><td>2#010</td><td><strong>Dringlichkeit</strong></td><td>$iptc_Dringlichkeit</td></tr>",
            
    => "<tr><td>2#015</td><td><strong>Kategorie</strong></td><td>$iptc_Kategorie</td></tr>",
            
    => "<tr><td>2#020</td><td><strong>Zusatzkategorien</strong></td><td>$iptc_Zusatzkategorien</td></tr>",
            
    => "<tr><td>2#022</td><td><strong>JobID</strong></td><td>$iptc_JobID</td></tr>",
            
    => "<tr><td>2#025</td><td><strong>Stichworte</strong></td><td>$iptc_Stichworte</td></tr>",
            
    => "<tr><td>2#027</td><td><strong>Kontaktstelle</strong></td><td>$iptc_Kontaktstelle</td></tr>",
            
    => "<tr><td>2#055</td><td><strong>Erstellt am  (Tag)</strong></td><td>$iptc_ErstelltAmTag</td></tr>",
            
    10 => "<tr><td>2#060</td><td><strong>Erstellt am  (Zeit)</strong></td><td>$iptc_ErstelltAmUhrzeit</td></tr>",
            
    11 => "<tr><td>2#065</td><td><strong>Programm</strong></td><td>$iptc_Programm</td></tr>",
            
    12 => "<tr><td>2#070</td><td><strong>Programmversion</strong></td><td>$iptc_Programmversion</td></tr>",
            
    13 => "<tr><td>2#075</td><td><strong>Objektzyklus</strong></td><td>$iptc_Objektzyklus</td></tr>",
            
    14 => "<tr><td>2#080</td><td><strong>Name des Autors</strong></td><td>$iptc_NamedesAutors</td></tr>",
            
    15 => "<tr><td>2#085</td><td><strong>Titel des Autors</strong></td><td>$iptc_TiteldesAutors</td></tr>",
            
    16 => "<tr><td>2#090</td><td><strong>Stadt</strong></td><td>$iptc_Stadt</td></tr>",
            
    17 => "<tr><td>2#092</td><td><strong>Region</strong></td><td>$iptc_Region</td></tr>",
            
    18 => "<tr><td>2#095</td><td><strong>Bundesland</strong></td><td>$iptc_Bundesland</td></tr>",
            
    19 => "<tr><td>2#100</td><td><strong>Laendercode</strong></td><td>$iptc_Laendercode</td></tr>",
            
    20 => "<tr><td>2#101</td><td><strong>Laendername</strong></td><td>$iptc_Laendername</td></tr>",
            
    21 => "<tr><td>2#103</td><td><strong>Auftraggeber</strong></td><td>$iptc_Auftraggeber</td></tr>",
            
    22 => "<tr><td>2#105</td><td><strong>Ueberschrift</strong></td><td>$iptc_Ueberschrift</td></tr>",
            
    23 => "<tr><td>2#110</td><td><strong>Bildrechte</strong></td><td>$iptc_Bildrechte</td></tr>",
            
    24 => "<tr><td>2#115</td><td><strong>Quelle</strong></td><td>$iptc_Quelle</td></tr>",
            
    25 => "<tr><td>2#116</td><td><strong>Copyright</strong></td><td>$iptc_Copyright</td></tr>",
            
    26 => "<tr><td>2#118</td><td><strong>Kontakt</strong></td><td>$iptc_Kontakt</td></tr>",
            
    27 => "<tr><td>2#120</td><td><strong>Objektbeschreibung</strong></td><td>$iptc_Objektbeschreibung</td></tr>",
            
    28 => "<tr><td>2#122</td><td><strong>Autor</strong></td><td>$iptc_Autor</td></tr>"
            
    );
            return 
    $info_arr;
        }
    }  
    $bild "bild.jpg";
    $bilddaten holeIPTCdaten($bildtrue); 

    // Ausgabe einer bestimmten Information
    echo "<table border='0'>\n";
    echo 
    $bilddaten[0]."\n";
    echo 
    "</table>\n";

    // Ausgabe mehrerer Informationen
    echo "<table border='0'>\n";
    echo 
    $bilddaten[1]."\n".$bilddaten[2]."\n";
    echo 
    "</table>\n";

    // Ausgabe mehrerer Informationen, die in Reihe liegen
    echo "<table border='0'>\n";
    for(
    $i 3$i <= 5$i++) echo $bilddaten[$i]."\n"
    echo 
    "</table>\n";
    ?>
    Gruß Mark

    webcreate IT SOLUTIONS
    www.webcreate-nrw.de

    Photoblog....|....flickr

  10. #10
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    Ist ja der Wahnsinn Mark - funktioniert einwandfrei!
    Noch eine Frage:
    Wie kann ich die Werte in einer Zeile Darstellen, also so:

    Brennweite: 50mm - Blende: 16 - Verschlusszeit: 1/500s
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  11. #11
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    Super auch das hat geklappt, nur wie bekomme ich die Brennweite nun an erster Stelle hin?
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  12. #12
    TP-Urgestein webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts Avatar von webcreate
    Registriert seit
    Nov 2003
    Ort
    NRW
    Beiträge
    11.660
    Du muss ja keine Ausgabe über foreach machen ...
    PHP-Code:
    echo $exif[2].$exif[0].$exif[1]; 
    Gruß Mark

    webcreate IT SOLUTIONS
    www.webcreate-nrw.de

    Photoblog....|....flickr

  13. #13
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    1000 Dank - es funktioniert einwandfrei!
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  14. #14
    TP-Greis Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Torsten lebt für das TP und seine User Avatar von Torsten
    Registriert seit
    Jan 2004
    Beiträge
    5.642
    Ich hätte doch noch eine Frage, ist es möglich automatisch das angezeigte Bild innerhalb einer Galerie auszulesen, also ohne das man jedesmal den Dateinamen einfügen muss?
    Gruß Torsten
    Meine Bilder im Internet: See the world through my eyes
    Aber Vorsicht: Meine Bilder können nicht sprechen

    Ich biete keinen privaten Support an!
    Fragen oder Probleme? Nur keine Scheu verfasse einen Beitrag

  15. #15
    TP-Urgestein webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts webcreate ist einer der Eckpfeiler des TP - ohne ihn geht nichts Avatar von webcreate
    Registriert seit
    Nov 2003
    Ort
    NRW
    Beiträge
    11.660
    Man könnte ein Verzeichnis von PHP auslesen lassen, klar geht das.
    Gruß Mark

    webcreate IT SOLUTIONS
    www.webcreate-nrw.de

    Photoblog....|....flickr

+ Antworten
Seite 1 von 2 1 2 LetzteLetzte

LinkBacks (?)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

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