|
phpPhotoBook
|
| Auteur |
Message |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: phpPhotoBook
Bon, j'ai refait la class Pictures pour corriger quelques bugs, elle semble maintenant au point.
Concernant la classe sql, elle n'est momentanément plus présente sur le wiki car je suis en train de la refaire de manière simplifiée.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 02/04/2007 16:12 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: phpPhotoBook
salut,
j'ai jamais eu besoin d'utiliser une classe pour les photos (enfin de traiter des photos tout court), mais elle m'a l'air intéressante
j'aurais quelques remarques:
la taille max d'une photo est de 800x600 => la vignette sera au max = 120x90
le nom des répertoires par défaut n'est pas vérifié (si les repertoires n'existent pas)
makeThumb n'est pas utilisable en dehors de la classe (imageInfos ne serait pas défini)
voilà une petite contribution 
ah oui, j'allais oublié, par curiosité, l'anglais c'est par habitude, ou c'est un choix délibéré?
Ce message a été modifié le: 03/04/2007 20:22 par coca25.
|
|
| 03/04/2007 20:20 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: phpPhotoBook
Alors, réponses en vrac:
- les dimensions données ne correspondent pas car une copie de l'image originelle, sans redimmensionnement, est aussi effectuée, cette image peut donc être utilisée comme source.
- le nom des répertoire est bien vérifié: j'appelle la fonction Makedir() qui a pour but de vérifier leur existence et de les créer si besoin est. J'aurais pu l'intégrer dans la classe mais j'ai préféré scinder.
- en fait, tu veux dire si on ne fait pas d'upload d'image. C'est vrai et c'est une erreur de ma part, je suis parti sur les fonctionnalités de base, à savoir que la classe n'était utilisée que pour envoyer des images, ce sera vite corrigé.
Et l'anglais, c'est les deux par défaut, je commente mon code en anglais (ce qui est plus pratique pour le diffuser) de même que mes variables sont toujours en anglais, ça permet de garder une cohérence vu que les mots-clé du code sont en anglais.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 04/04/2007 09:43 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: phpPhotoBook
pour les répertoires, ce que je voulais dire, c'est que tu vérifies les noms passé au constructeur qui lui même appelle setImagedir(), mais si les paramètres d'initialisation sont vides:
if (!empty($imageDir)) {
$this->setImageDir('imageDir',$imageDir);
}
setImageDir() ne sera pas appelé et le répértoire par défaut non créé
mais bon ca dépend de ce que tu voyais comme fonctionnement... les répertoires par défaut sont peut etre toujours valables.
|
|
| 04/04/2007 11:22 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: phpPhotoBook
oui, la classe instancie des variables (var $imageDir = ), donc si on ne passe pas par setImageDir(), c'est cette variable qui est prise en compte.
C'est l'intérêt de définir des variables dans les classes.
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 04/04/2007 13:27 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: phpPhotoBook
... j'ai du raté quelque chose
"var $imageDir", j'ai saisi, mais le répertoire "/images/", il est crée quand?
|
|
| 04/04/2007 14:01 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: phpPhotoBook
La méthode setImagedir() appelle la fonction Makedir() qui se charge de la vérification et, si besoin est, de la création.
Méthode setImagedir
<?
/**
* Method to assign directory and create it if needed
* @param string $type
* @param string $dir
* @see MakeDir()
*/
function setImagedir($type, $dir) {
if (MakeDir($dir)) {
$this->{$type} = $dir;
} else {
$this->error[] = 'Error creating '.$dir;
}
}
?>
Fonction Makedir
<?
/**
* Function to create recursive path
*
* @param string $path
*/
function MakeDir($path) {
$curpath = '';
$subpaths = explode("/", $path);
foreach ($subpaths as $pathname) {
$curpath .= "/".$pathname;
if (!is_dir($curpath)) {
if (!mkdir($curpath, 0777)) {
return false;
}
}
}
return $curpath;
}
?>
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 04/04/2007 16:26 |
|
 |
coca25
Junior Member
 
Messages : 20
Groupe : Membres
Inscription : Nov 2006
Statut :
Hors ligne
Réputation : 0
|
RE: phpPhotoBook
bon, je vais pas insister, mon dernier post à ce sujet 
<?php $photos = new Pictures; /* à ce niveau, si j'ai bien compris, /images n'est pas créé * Pictures::setImagedir() n'est pas appelée * supposant je récupère depuis une autre page le fichier */ $photos->uploadImage ($_FILES['photo']); /* la je devrais avoir l'erreur: * Error moving file xxx to yyy */ ?>
PS: le message d'erreur affiche le vrai nom de l'image et non celui retravaillé, mais c'est peut etre voulu.
Ce message a été modifié le: 04/04/2007 21:34 par coca25.
|
|
| 04/04/2007 21:33 |
|
 |
CrazyCat
Administrator
      
Messages : 130
Groupe : Administrateurs
Inscription : Feb 2007
Statut :
Absent
Réputation : 0
|
RE: phpPhotoBook
Je suis entièrement d'accord: ma classe est actuellement faite pour traiter les fichiers uploadés (elle est appelé sur un boucle qui traite les $_FILES), elle doit donc se mettre en erreur dans ton fonctionnement.
Ce point sera très vite corrigé, c'est promis.
Concernant le message d'erreur qui renvoit le nom de l'image originale, c'est normal et voulu: si l'upload échoue, et comme je traite plusieurs images envoyées, je signale l'erreur sur l'image d'origine (dont je connais le nom) et pas sur l'image de destination.
Bon, gros boulot en perspective pour rendre cette classe plus "passe-partout", mais le forum est là pour ça.
Par contre, je pense garder en externe la fonction de gestion des répertoires, tout simplement parce que je pense ensuite créer une classe de gestion des répertoires, mais si tu penses que ce serait plus judicieux que la classe Pictures traite tout, dis le moi et on avisera.
P.S.: les autres peuvent participer, ne serait-ce que sur les discussions de principe
L'erreur est humaine, mais il faut un ordinateur pour provoquer une catastrophe
|
|
| 04/04/2007 22:06 |
|
 |
Yayef
Junior Member
 
Messages : 17
Groupe : Membres
Inscription : Dec 2006
Statut :
Hors ligne
Réputation : 0
|
RE: phpPhotoBook
Par contre, je pense garder en externe la fonction de gestion des répertoires, tout simplement parce que je pense ensuite créer une classe de gestion des répertoires, mais si tu penses que ce serait plus judicieux que la classe Pictures traite tout, dis le moi et on avisera.
Pour la modularité, créer une classe de gestion des répertoires autonome me semble tout à fait pertinent, vu qu'elle pourra être utile dans bien d'autres applications. Je ne vois donc pas du tout quelle raison pourrait faire que ce soit la classe Pictures qui traite tout.
Moitié kangourou, moitié perroquet, c'est une souris.
Si les gens qui disent du mal de moi savaient exactement ce que je pense d'eux, ils en diraient bien davantage. (Sacha Guitry)
|
|
| 05/04/2007 09:16 |
|
 |
|
|