interface web pour iPhoto

studiosdc

Membre confirmé
7 Mai 2004
30
2
Salut à tous,

pour ceux que çà intéresse je suis entrain de développer une interface web (php/mysql) pour accéder à distance à une librarie iPhoto.

pour vous donner une première idée voici le lien vers mon serveur:
http://home.studio-sdc.com/public/iphoto/

c'est déjà fonctionnel mais il y a encore pas mal de boulot au niveau de la recherche par mot-clé, info photos, arborescence des folders,...

le principe est qu'à chaque mise à jour de ma librairie je parse le xml et j'insère toutes les données dans une DB msyql. pour le reste, le php va lire les photos et les thumbnails directement dans les sous-répertoires de iPhoto.

Si vous avez des suggestions/commentaires, tout est bienvenu.
Dès que j'aurai fini ce projet, je pourrai même fournir le code à ceux que celà intéresse.

Merci

Stéphane
PS: dans ce cas-ci mon serveur tourne sur un pc avec easyphp mais cela ne devrait pas poser de problème pour l'installer sur un mac avec php/mysql.
 
  • J’aime
Réactions: Nathalex
vraiment sympa :)

mais je trouve les vignettes trop grosses, et les grandes images se pretent mal à une utilisation web.

le jour ou tu mets ton code à dispo, je suis preneur :up:
 
oui j'utilise les vignette générées par iPhoto. Pour la vitesse à mon avis çà vient de la connexion... 512kbits en sortie et si plusieurs personnes se connectent en même temps... y' a pas de miracle, çà sera lent.
et puis les vignettes de iPhoto sont un peu grosses (en dimensions et en kilobytes)
Je pense que je génererai plus tard mes propres vignettes, plus petites et mieux compressées.
voilà déjà pas mal de bonnes idées pour la suite de mon développement, et c'est bien pour çà que j'ai posté ce message :-)
 
Ah oui alors là, je suis bluffé, bravo ! :up:
Cela dit moi aussi je trouve que les vignettes sont un petit peu trop grandes.
Mais vraiment c'est la classe ! :cool: :zen:
 
studiosdc a dit:
Je pense que je génererai plus tard mes propres vignettes, plus petites et mieux compressées.
voilà déjà pas mal de bonnes idées pour la suite de mon développement, et c'est bien pour çà que j'ai posté ce message :-)

Au fait, as-tu dans ton "tiroir à projets" la possibilité de limiter l'affichage à certains albums seulement ?
 
studiosdc a dit:
oui j'utilise les vignette générées par iPhoto. Pour la vitesse à mon avis çà vient de la connexion... 512kbits en sortie et si plusieurs personnes se connectent en même temps... y' a pas de miracle, çà sera lent.
et puis les vignettes de iPhoto sont un peu grosses (en dimensions et en kilobytes)
Je pense que je génererai plus tard mes propres vignettes, plus petites et mieux compressées.
voilà déjà pas mal de bonnes idées pour la suite de mon développement, et c'est bien pour çà que j'ai posté ce message :-)

J'ai eut a generer des vignettes recemment, j'ai utilisé ImageMagick, si tu ne le connais pas, je te conseille d'y jeter un oeil.
http://www.imagemagick.org/script/index.php
Je peut te donner le fragment de code, mais c'est du Perl...

Cordialement
 
Là, je suis sur le cul !!
Je n'ai pas la moindre idée de comment tout cela peut fonctionner mais c'est superbe !

En plus de l'accès limité à certains albums, est-il possible de prévoir l'accès par mot de passe ?
Ou mieux encore, de définir des droits utilisateurs : Untel ne pourrait regarder que tel album alors qu'Unetelle ne pourrait en regarder que d'autres ?
 
Pour la suite du développement, j'ai effectivement prévu de créer une petite DB d'utilisateurs et chaque utilisateur n'aura qu'une vue partielle des albums... mais chaque chose en son temps ;-)
çà ne fait que 2 petites semaines que je bosse sur le projet à mes heures perdues.
 
oui j'ai entendu parler de imagemagick, je vais aller jeter un coup d'oeil de ce côté là...
merci pour l'info! :-)

en tout cas merci à tous pour vos messages, vos suggestions et encouragements!!!
 
Sinon, en dehors de ImageMagik, il y a la classique librairie GD 2 qui permet de créer ses vignettes rapidement et très proprement (d'ailleurs de nombreux exemples de code très efficaces sont à disposition sur http://fr.php.net/manual/fr/

PS : il me semble que GD n'est pas installé avec easyphp, par contre avec les packages entropy pour Mac, la librairie est présente.
 
studiosdc a dit:
j'ai regardé dans mon easyphp... l'extension php_gd2 est dispo mais pas activée par défaut.

Je viens de vérifier : en effet, l'activation est nécessaire.
Un petit ";" à enlever en début de ligne dans le php.ini, on redémarre PHP et c'est réglé.
 
ou même plus facile avec les dernirèe versions de easyphp...
clique-droit sur l'icone du system-tray-> configuration->extension php
ensuite il suffit de cocher php_gd2

je me demande même si easyphp ne redémarre pas tout seul ensuite... ;-)

mais on s'éloigne du sujet et tout cela n'est plus très mac... y'en a qui vont gueuler :-)
 
studiosdc a dit:
mais on s'éloigne du sujet et tout cela n'est plus très mac... y'en a qui vont gueuler :-)
Bah, c'est pourtant la grande convergence annoncée : Rosetta, Intel in your Mac...

Je te laisse un bout de code que j'avais adapté à mes besoins :

Bloc de code:
if(ereg("\.jpg",$file) || ereg("\.jpeg",$file) || ereg("\.JPG",$file) || ereg("\.JPEG",$file)) {
$compte++;
list($width, $height, $type, $attr) = getimagesize($dir.$file);
$width=$width+20;
$height=$height+20;
		// Création de vignette si besoin 
		// avec calcul des nouvelles dimensions avec $max
		// pour dimension la plus importante de largeur ou hauteur
$filename = "./vignettes/th_".$file;

if (file_exists($filename)){
}
else
{
$max=70;	
list($largeur, $hauteur) = getimagesize($dir.$file);
if ($largeur > $hauteur) {
$coeff= $max / $largeur;
}
else
{
$coeff= $max / $hauteur;
}
$nouvlargeur = $largeur * $coeff;
$nouvhauteur = $hauteur * $coeff;

// chargement
$vignette = imagecreatetruecolor($nouvlargeur, $nouvhauteur);
$source = imagecreatefromjpeg($dir.$file);

// Redimensionnement
imagecopyresampled($vignette, $source, 0, 0, 0, 0, $nouvlargeur, $nouvhauteur, $largeur, $hauteur);

// Ecriture dans un fichier .jpeg du meme nom précédé de th_

imagejpeg($vignette,"./vignettes/th_".$file,75);
imagedestroy($vignette);
}

Si ça peut te servir.
 
et oui je sais et je suis tout cela avec un très grand intérêt vu que je ne suis plongé dans le monde mac que depuis un peu plus d'un an. professionnellement je développe sous windows mais depuis que j'ai touché un mac je ne veux plus rien d'autre chez moi (à part mon serveur de fichiers parce que je ne vois pas trop l'intérêt de payer 500 euros pour un mac mini quand je vois la capacité que je peux avoir dans un pc du même prix)
et puis il fallait bien que je retourne aux sources... j'ai commencé l'informatique en 82 en écrivant mes premières lignes de BASIC sur une apple II :-)

je viens d'ailleurs de me payer un bouquin sur la programamtion cocoa... je compte bien m'y mettre!

merci pour le code en tout cas, c'est sympa!
 
  • J’aime
Réactions: mxmac
joli, tu mets en route un projet opensource autour de ces scripts php ? ;) ça donne envie d'y mettre les doigts dedant....

y'en a qui vont se remettre a iphoto.... ;)

par contre tout cela marche trés bien avec des jpeg mais y'a rien qui permette d'ouvrir les raw a ma connaissance.... non ? :confused:


:up: :zen: :D