Image MINI - je comprends pas ce script - PHP - Programmation
Marsh Posté le 24-08-2002 à 06:31:40
>> je comprends pas pourquoi il teste le nb d'arg dans les deux premières conditions (il n'est censé y en avoir que 2),
cf le commentaire au début de la fonction, "paramètres supplémentaires". en php, tu peux envoyer autant de paramètres que tu veux à une fonction.
lorsque tu définis qq chose comme
function myFunc($taillex, $tailley)
c'est que tu demandes à l'appelant de mettre une taille x & une taille y comme deux premiers paramètres. ensuite, tu peux accepter des paramètres supplémentaires, récupérés avec func_get_arg(). ici, la taille de l'image générée et son format.
tu peux donc appeler la fonction comme suit :
make_thumbs("/images", "/thumbs" )
en précisant la largeur de l'image générée :
make_thumbs("/images", "/thumbs", 50)
en précisant le type d'image générée :
make_thumbs("/images", "/thumbs", "gif" )
en précisant la largeur et le type :
make_thumbs("/images", "/thumbs", 50, "gif" )
ou
make_thumbs("/images", "/thumbs", "gif", 50)
comme tu peux le constater, les 3ème & 4ème paramètres sont variables. donc :
si la fonction a au moins 3 paramètres, on doit tester ce troisième paramètre : est-ce la taille ou le type ? pareil pour le 4ème paramètre : taille ou type ?
c'est tout. je trouve ça absolument dégueulasse comme manière de procéder, vu que
make_thumbs("/images", "/thumbs", 50, 70)
ou
make_thumbs("/images", "/thumbs", "gif", "jpg" )
sont parfaitement acceptables.
>> je capte pas son expression régulière "/\/$/i"
cf http://www.php.net/manual/en/function.preg-match.php
il teste si la chaîne se termine par un /. tu peux facilement deviner vu le code : si la regex ne trouve rien, il l'ajoute !
>> je vois pas ce qu'il fait avec les droits des fichiers :
il teste s'il a les permissions lecture / écriture / éxécution sur le répertoire destination. regarde l'aide http://www.php.net/manual/en/function.fileperms.php / http://www.php.net/manual/en/function.chmod.php .
>> pour le reste je comprends à peu près mais il ne m'affiche rien sur la page ou j'appelle cette fonction et je n'arrive pas à obtenir les messages d'erreur provenant de php
on est censés deviner magiquement pourquoi ça plante ? tu ne dis pas grand chose ...
Marsh Posté le 24-08-2002 à 14:51:39
merci pour ta patiente et pour ton aide (sauf pour la dernière remarque )
bon c'est clair que tout ça j'aurais pu trouvé tout seul mais j'avais pas l'esprit très frais à cette heure là
pour le regexp, c'est le / du début que je ne comprennais pas, mais à priori on est censé commencé tous les regexp par un / (corrige moi si je me trompe)
ce qui ne va pas c'est que j'appelle cette fonction via un fichier test.php, tout ce qu'il y a de plus con, et ça marche pas ...
il me laisse une page vierge quand je lance le script
et j'ai aucun message d'erreur au niveau php (ils sont censé apparaitre sur le terminal, à priori)
Marsh Posté le 24-08-2002 à 16:52:03
tu affiches le résultat dans ton fichier test.php au moins ?
Code :
|
Marsh Posté le 24-08-2002 à 17:50:26
ethernal a écrit a écrit : tu affiches le résultat dans ton fichier test.php au moins ?
|
non, normalement c'est censé me créer des images, mais rien n'est créé, et j'obtiens une page vierge (aucun message d'erreur), et je n'ai aucun message d'erreur php sur mon serveur (il devrait apparaitre dans le terminal
error_reporting = E_ALL |
Marsh Posté le 24-08-2002 à 18:15:54
tatanka a écrit a écrit : non, normalement c'est censé me créer des images, mais rien n'est créé, et j'obtiens une page vierge (aucun message d'erreur), et je n'ai aucun message d'erreur php sur mon serveur (il devrait apparaitre dans le terminal |
rien n'est créé... ok, mais c'est pas pour cela qu'il doit y avoir une erreur php !
en plus il retourne soit un tableau des noms images crées ou bien un message d'erreur... pfff c'est mal fait
Code :
|
je sais rien te dire de plus
Marsh Posté le 24-08-2002 à 06:02:31
je comprends pas pourquoi il teste le nb d'arg dans les deux premières conditions (il n'est censé y en avoir que 2), ni ce qu'il fait dedans
je capte pas son expression régulière "/\/$/i"
je vois pas ce qu'il fait avec les droits des fichiers :
$perms = $perms & 07;
pour le reste je comprends à peu près mais il ne m'affiche rien sur la page ou j'appelle cette fonction et je n'arrive pas à obtenir les messages d'erreur provenant de php
un coup de main sera pas de refu
Message édité par tatanka le 24-08-2002 à 06:03:10