[RESOLU] insert de données iptc

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] insert de données iptc

Re: insert de données iptc

par or 1 » 17 août 2018, 13:18

dans formiptc.php appelé en méthode post :
$iptc = array('2#105' => $_POST['iptctitre'], '2#120' => 'Commentaire', '2#122' => 'Auteur');

insert de données iptc

par dom39210 » 17 août 2018, 11:48

Bonjour,
j'ai trouvé un tuto pour insérer des données iptc de mes photos sur mon site.
Je sais bien que je peux le faire via des logiciels tels que xnview mais je voudrais passer par PHP
voilà le code du tuto
$chemin_image="dossier-images/image.jpg";
$iptc = array('2#105' => 'titre', '2#120' => 'Commentaire', '2#122' => 'Auteur');
$iptcdata = NULL; #1
foreach($iptc as $tag => $string)#2
{
   $tag = substr($tag, 2); #3
   $iptcdata .= transformer_iptc($tag, $string); #4
}
function transformer_iptc($data, $value)
{
   $length = strlen($value);
   $retval = chr(0x1C).chr(2).chr($data);

   if($length < 0x8000)
      $retval .= chr($length >> 8).chr($length& 0xFF);
   else{
      $retval .= chr(0x80).chr(0x04). 
                 chr(($length >> 24)& 0xFF). 
                 chr(($length >> 16)& 0xFF). 
                 chr(($length >> 8)& 0xFF). 
                 chr($length& 0xFF);
   }
   return $retval.$value;
}
fichier = fopen($chemin_image, "wb"); # Ouverture du fichier
fwrite($fichier, $donnees); # Écriture du fichier
fclose($fichier); # Fermeture du fichier
Ma question: est il possible de remplacer les valeurs dans l'array (titre,commentaire,auteur) par des valeurs issues d'un formulaire. Par exemple:
	<form role="form" id="dom-form" action="formiptc.php" method="post" name="formulaire" onsubmit="return validation();"  enctype="multipart/form-data" autocomplete="on">          
					<div class="form-group"> <!-- Name field -->
						<label class="control-label " for="iptctitre">Titre</label>
						<input class="form-control" id="iptctitre" name="iptctitre" type="text"/>
					</div>
					<div class="form-group"> <!-- Message field -->
						<label class="control-label " for="iptcom">Commentaire</label>
						<textarea class="form-control" cols="40" id="iptcom" name="iptcom" rows="10"></textarea>
					</div>
					<div class="form-group">
						<button class="btn btn-primary " name="submit" type="submit">Envoi</button>
					</div>
				</form>	
je bloque là dessus depuis deux jours.
Merci à l'avance pour votre aide