Auteur Sujet: Probleme Iptcparse  (Lu 1400 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne afid

  • Débutant
  • *
  • Messages: 3
Probleme Iptcparse
« le: 20 décembre 2003 à 19:29:52 »
Hello a tous
je dois recuperer les champs iptc de mes photos
j'ai creer un code php
<?php
$image_entry = tep_href_link(mon_images.jpg);
        $iptc = getimagesize($image_entry, &$info);
$iptc = iptcparse($info["APP13"]);

$data = array();

//005 Object_Name
$data[OBJECT_NAME] = $iptc["2#005"][0];



//007 Edit_Status
$data[EDIT_STATUS] = $iptc["2#007"][0];



//010 Priority
$data[PRIORITY] = $iptc["2#010"][0];



//015 Category
$data[CATEGORY] = $iptc["2#015"][0];
if (is_array($iptc["2#015"])) {
  foreach ($iptc["2#015"] as $temp) {
$data[CATEGORY] = ' '.$temp . '<br>';
  }
}


//020 Supplemental Category
$data[SUPPLEMENTAL_CATEGORIE] = $iptc["2#020"][0];
if (is_array($iptc["2#020"])) {
  foreach ($iptc["2#020"] as $temp) {
$data[SUPPLEMENTAL_CATEGORIE] = ' '.$temp . '<br>';
  }
}
  

//022 Fixture Identifier
$data[FIXTURE_IDENTIFIER] = $iptc["2#022"][0];


//025 Keywords
if (is_array($iptc["2#025"])) {
  foreach ($iptc["2#025"] as $temp) {
   $data[KEYWORD] = ' '.$temp .'<br>';
  }
}


//030 Release Date
$Reldate = $iptc["2#030"][0];
$data[RELEASE_DATE] = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\3-\\2-\\1", $Reldate);

  
//035 Release Time
$Reltime = $iptc["2#035"][0];
$data[RELEASE_TIME] = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\3-\\2-\\1", $Reltime);
  

//040 Special Instructions
$data[SPECIAL_INSTRUCTIONS] = $iptc["2#040"][0];
  

//045 Reference Service
$data[REFERENCE_SERVICE] = $iptc["2#045"][0];
  

//047 Reference Date
$Refdate = $iptc["2#047"][0];
$data[REFERENCE_DATE] = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\3-\\2-\\1", $Refdate);
  

//050 Reference Number
$data[REFERENCE_NUMBER] = $iptc["2#050"][0];
  

//055 Created Date
$Creatdate= $iptc["2#055"][0];
$data[CREATED_DATE] = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\3-\\2-\\1", $Creatdate);
  

//060 Created Time
$Creattime= $iptc["2#060"][0];
$data[CREATED_TIME] = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\3-\\2-\\1", $Creattime);
  

//065 Originating Program
$data[ORIGINATING_PROGRAM] = $iptc["2#065"][0];
  

//070 Program Version
$data[PROGRAM_VERSION] = $iptc["2#070"][0];


//075 Object Cycle
$data[OBJECT_CYCLE] = $iptc["2#075"][0];


//080 Byline
$data[BYLINE] = $iptc["2#080"][0];


//085 Byline Title
$data[BYLINE_TITLE] = $iptc["2#085"][0];


//090 City
$data[CITY] = $iptc["2#090"][0];


//095 Province State
$data[STATE] = $iptc["2#095"][0];


//100 Country Code
$data[COUNTRY_CODE] = $iptc["2#100"][0];


//101 Country
$data[COUNTRY] = $iptc["2#101"][0];


//103 Original Transmission Reference
$data[OTR] = $iptc["2#103"][0];


//105 Headline
$data[HEADLINE] = $iptc["2#105"][0];


//110 Credit
$data[CREDIT] = $iptc["2#110"][0];


//115 Source
$data[SOURCE] = $iptc["2#115"][0];


//116 Copyright String
$data[COPYRIGHT_NOTICE] = $iptc["2#116"][0];


//120 Caption
$data[CAPTION] = $iptc["2#120"][0];


//121 Local Caption
$data[LOCAL_CAPTION] = $iptc["2#121"][0];


//122 Caption writer
$data[CAPTION_WRITER] = $iptc["2#122"][0];


$iptc_data_rows = "";

foreach ($data as $k => $v) {
  if (!empty($v)) {
   $iptc_data_rows .= "<tr valign=\"top\">\n"."\t<td width=\"1%\" align=\"right\" nowrap class=smalltext>$k:</td>\n"."\t<td class=smalltext width=\"250\">$v</td>\n"."</tr>\n";
  }
}


 
?>

<table cellpadding="0" cellspacing="7" align=center>

<?
print($iptc_data_rows);
?>

</table>

En local avec easyphp pas de probleme
sur le serveur phpnet j'obtient

Warning: getimagesize(http://monsite.com/mon_image.jpg): failed to open stream: Connection timed out in /mon_code.php
au niveau de la ligne getimagesize

Pouvez vous m'aiguiller ??

Hors ligne maverick78

  • VIP
  • *****
  • Messages: 2 601
    • http://www.clan-ck.com
Probleme Iptcparse
« Réponse #1 le: 20 décembre 2003 à 20:08:25 »
il faut utiliser lurl sur le relative et non pas absolue
La force est dans la céréale
Clan cereal-killer : http://www.clan-ck.com

Ne te demande pas ce que ton pays peut faire pour toi mais plutôt ce que tu peux faire pour ton pays...(JF Kennedy)

Hors ligne MaximuS

  • Expert
  • ****
  • Messages: 577
    • The Caribbean Weblog
Probleme Iptcparse
« Réponse #2 le: 20 décembre 2003 à 20:35:11 »
(réponse rapide à une très (très) longue question :D)

Hors ligne afid

  • Débutant
  • *
  • Messages: 3
Probleme Iptcparse
« Réponse #3 le: 21 décembre 2003 à 05:27:48 »
reponse a laquelle je n'ais absolument rien pijer  :unsure:  

Hors ligne spontex

  • Connaisseur
  • ***
  • Messages: 262
    • http://dvdtoile.com
Probleme Iptcparse
« Réponse #4 le: 21 décembre 2003 à 08:54:53 »
Il y a un bug sur PhpNet qui fait qu'il est impossible d'appeler un fichier local avec son URL complète :
getimagesize("http://monsite.com/mon_image.jpg")
Au lieu de http://monsite.com/mon_image.jpg, tu dois lui donner le chemin relatif (exemple : ../mon_image.jpg ou même juste mon_image.jpg si elle est dans le même répertoire que ton script)

getimagesize("../mon_image.jpg")
« Modifié: 21 décembre 2003 à 08:55:17 par spontex »
spontex@dvdtoile.com
dvdtoile.com : Toutes les sorties au cinema et en DVD.