Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

torode
2005-04-05 15:54:17

Tcherno a écrit:

torode a écrit:

. Cela simplifie le travail des photographes contributeurs qui  envoient des jpg dans le dossier pwg_high pour leur éviter une manipulation de fichier supplémentaire. ).

Ton script m'a l'air très interessant, mais, par contre je ne comprends pas bien ta phrase (ci dessus) peux tu m'éclairer ?

Si tu souhaites ouvrir un site pour un collectif de photographes, pour leur faciliter le travail, tu leur demandes d'envoyer leurs photos dans un dossier en .jpg et mon script se charge du zippage.

Tcherno
2005-04-05 15:48:13

torode a écrit:

. Cela simplifie le travail des photographes contributeurs qui  envoient des jpg dans le dossier pwg_high pour leur éviter une manipulation de fichier supplémentaire. ).

Ton script m'a l'air très interessant, mais, par contre je ne comprends pas bien ta phrase (ci dessus) peux tu m'éclairer ?

Michrone
2005-04-01 19:05:07

Hello,

Très chouette script.
Pourrais faire partie d'une évolution de phpwg (une option dans le panneau admin: zip ou pas zip). Non ? :-)

torode
2005-04-01 12:58:55

Bonjour,

Le script ci-dessous permet de compresser au format .zip les photos .jpg (pas les .JPG) du dossier pwg_high. Il est placé à la racine du site, je l'ai appelé zip_me.php. Il fonctionne sur un serveur linux en Fedora Core 3, je ne l'ai pas testé sur un serveur windows.
Je l'ai testé sur Mac OS X.3.8 sur IE, Firefox, Mozilla et Safari, sur Windows XP sur IE et Firefox.
Il permet aux visiteurs de télécharger des .zip au lieu d'afficher la photo haute def dans une fenêtre. Cela simplifie le travail des photographes contributeurs qui  envoient des jpg dans le dossier pwg_high pour leur éviter une manipulation de fichier supplémentaire.

Code:

<?php
// Récupération du nom de la photo variable {high.U_HIGH} dans picture.tpl
$photo=$_GET['photo'];
// Test de l'argument
$er = "^[./[:alnum:]_-]+\.(jpg|JPG)$" ;
if (ereg($er,$photo)) {
  // Ajout du chemin absolu au nom de la photo remplacez /var/www/html/photos/ par votre arbo absolue
  $photo= "/var/www/html/photos/".str_replace("./","","$photo");
  // Zippage de la photo
  $zip=str_replace(".jpg",".zip","$photo");
  if (!file_exists($zip)) {
    exec("zip -j $zip $photo");
  }
  // Ouvre le fichier
  $fp = fopen($zip, 'r');
  $zip2 = basename($zip);
  // Envoi des en-têtes
  header("Content-Type: application/zip");
  header("Content-Disposition: attachment; filename=$zip2");
  // Envoi du contenu du fichier
  fpassthru($fp);
  // Suppression du fichier .zip pour gagner de l'espace disque
  if (file_exists("$zip")) {
    unlink("$zip");
    } else {
      die("Echec unlink");
  }
} else { 
        // Message d'erreur en cas de l'argument du style ;rm -rf *
  echo "Erreur nom de fichier<br><br><br>Cliquez sur le bouton \"Retour\" de votre navigateur.<br><br><br>Please click on the \"Back\" button of your browser." ;
}
exit;
?>

Code à insérer dans la template picture.tpl :

Code:

<!-- BEGIN high -->
<div><a href="zip_me.php?photo={high.U_HIGH}">Download High Res</a></div>
<!-- END high -->

P.S.: Les droits des fichiers doivent être 755 sinon exec ne fonctionne pas (apache n'a pas les droits).

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2025 · Contact