taille & dimensions d'une image

taille & dimensions d'une image - PHP - Programmation

Marsh Posté le 10-04-2003 à 10:51:58    

peut-on tester le poids et les dimmensions d'une image située sur un autre serveur ?
 
par exemple tester le poids & les dimensions de http://www.tonsite.com/tonimage.jpg
 
Merci de votre aide

Reply

Marsh Posté le 10-04-2003 à 10:51:58   

Reply

Marsh Posté le 10-04-2003 à 11:03:04    


array getimagesize (string filename [, array imageinfo])
 
The GetImageSize() function will determine the size of any GIF, JPG or PNG image file and return the
dimensions along with the file type and a height/width text string to be used inside a normal HTML IMG tag.
 
Returns an array with 4 elements. Index 0 contains the width of the image in pixels. Index 1 contains the
height. Index 2 a flag indicating the type of the image. 1 = GIF, 2 = JPG, 3 = PNG. Index 3 is a text string
with the correct "height=xxx width=xxx" string that can be used directly in an IMG tag.


 
Edit: pour le poids, a part le charger en local et tester, je sait pas.


Message édité par VisualC++ le 10-04-2003 à 11:04:42
Reply

Marsh Posté le 10-04-2003 à 11:18:00    

ex-floodeur a écrit :

peut-on tester le poids et les dimmensions d'une image située sur un autre serveur ?
 
par exemple tester le poids & les dimensions de http://www.tonsite.com/tonimage.jpg
 
Merci de votre aide


Tu ne peux pas faire cela sur un site distant.


---------------
Si je suis près de toi c'est soit pour t'embrasser ou te croquer, alors à ce moment là rappelle toi de ce que tu m'as fait. du bien ou du mal?
Reply

Marsh Posté le 10-04-2003 à 12:07:21    

berceker a écrit :


Tu ne peux pas faire cela sur un site distant.

de quoi ? poids ou dimension ?

Reply

Marsh Posté le 10-04-2003 à 12:08:41    

dimension ca marche avec la fct plus haut
poids, faut absolument la recup en locale je pense (enfin je fait comme ca perso).

Reply

Marsh Posté le 10-04-2003 à 12:14:24    

en mettant getimagesize (http://www.monsite.com/monimage.jpg) ???

Reply

Marsh Posté le 10-04-2003 à 12:15:40    

oui, enfin avec des " quand mm ...

Reply

Marsh Posté le 10-04-2003 à 12:20:17    

VisualC++ a écrit :

oui, enfin avec des " quand mm ...

ca va me revoyer les dimensions sous forme d'un tableau je crois.
 
En fait je veux me servir de cela pour verifier que l'image n'est pas trop grande par rapport a des criteres de dimension prédéfinis par moi meme (ex pas plus de 100*100)

Reply

Marsh Posté le 10-04-2003 à 12:23:03    

ben c fait pour ca, genre  
 

Code :
  1. function fnbGetImageSize($location) {
  2. $size = GetImageSize($location);
  3. if ($size[0] == "" )
  4.  return false;
  5. if (($size[0] > TaLargeurMax) || ($size[1] > TaHauteurMax
  6.  return false;
  7. return true;
  8. }


 
la fonction te retournera true que si l'image respecte ta taille predefinie

Reply

Marsh Posté le 10-04-2003 à 13:21:59    

VisualC++ a écrit :

dimension ca marche avec la fct plus haut
poids, faut absolument la recup en locale je pense (enfin je fait comme ca perso).


 
 
 clair :)  
 
filesize() ne fonctionne pas sur les fichiers distants  [:troa]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-04-2003 à 13:21:59   

Reply

Marsh Posté le 10-04-2003 à 13:32:37    

simogeo a écrit :


 
 
 clair :)  
 
filesize() ne fonctionne pas sur les fichiers distants  [:troa]  

y a aucun moyen donc ?

Reply

Marsh Posté le 10-04-2003 à 13:40:04    

ex-floodeur a écrit :

y a aucun moyen donc ?


 
 
ben à distance ....je ne pense pas ....
 
ou alors telephoner a l'admin serveur pour qu'il te donne de vive voix la taille du fichier en question  :whistle:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-04-2003 à 13:45:57    

ben c'est bizarre, kan on demande un rep, on obtient la liste des fichiers avec la taille (si il y a pas d'index).
C'est le serveur qui les envoies ?


---------------
get amaroK plugin
Reply

Marsh Posté le 10-04-2003 à 16:14:49    

ex-floodeur a écrit :

y a aucun moyen donc ?


ben heureusement  que de telle fonction  n'existe  car si de telle fonction pouvais etre possible alors pourquoi une fonction ne pourrais pas regarder le code sour php sur un autre serveur.
c'est un trou de securité  [:criun]


---------------
Si je suis près de toi c'est soit pour t'embrasser ou te croquer, alors à ce moment là rappelle toi de ce que tu m'as fait. du bien ou du mal?
Reply

Marsh Posté le 10-04-2003 à 18:11:20    

berceker a écrit :


ben heureusement  que de telle fonction  n'existe  car si de telle fonction pouvais etre possible alors pourquoi une fonction ne pourrais pas regarder le code sour php sur un autre serveur.
c'est un trou de securité  [:criun]  

merci beaucoup !

Reply

Marsh Posté le 10-04-2003 à 20:15:18    

ex-floodeur a écrit :

merci beaucoup !


attend quand je reflechi bien si tu fais un fopen sur une image.
fopen("http://www.ton_site.com/ton_image.jpg" );
je pense qu'il va prendre le source image et la je pense que tu peux l'exploiter essay de voir ce qu'il se passe a ce moment la.
 
je te donne pas la solution mais une voix. :hello:


---------------
Si je suis près de toi c'est soit pour t'embrasser ou te croquer, alors à ce moment là rappelle toi de ce que tu m'as fait. du bien ou du mal?
Reply

Marsh Posté le 11-04-2003 à 13:57:17    

VisualC++ a écrit :

ben c fait pour ca, genre  
 

Code :
  1. function fnbGetImageSize($location) {
  2. $size = GetImageSize($location);
  3. if ($size[0] == "" )
  4.  return false;
  5. if (($size[0] > TaLargeurMax) || ($size[1] > TaHauteurMax
  6.  return false;
  7. return true;
  8. }


 

jai un leger probleme : jai limité la hauteur des images à 100 et la largeur à 120 pour l'affichage mais des images plus grandes (ex 150 * 150) s'affichent quand meme. Pourquoi ?

Reply

Marsh Posté le 11-04-2003 à 15:18:42    

ben si tu as copie mon code la dessus, manque des parentheses ;)

Reply

Marsh Posté le 11-04-2003 à 15:31:15    

en fait,ce qu'il faudrait faire,c'est d'uploader l'image temporairement,et de regarder sa taille.Mais le probleme c'est si c'est un grosse image,il faudrait pouvoir donner le message d'avertissement au moment ou l'upload commence a depasser la taille limite au lien d'attendre la fin de l'upload.  
Mais ca je sais pas si c'est possible :??:


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 11-04-2003 à 15:32:59    

VisualC++ a écrit :

ben si tu as copie mon code la dessus, manque des parentheses ;)

jai bien remis tout les parentheses je te rassure

Reply

Marsh Posté le 11-04-2003 à 16:22:23    

ex-floodeur a écrit :

jai bien remis tout les parentheses je te rassure

et un fopen sur une image ...... [:criun]

Reply

Marsh Posté le 11-04-2003 à 17:57:58    

ex-floodeur a écrit :

jai un leger probleme : jai limité la hauteur des images à 100 et la largeur à 120 pour l'affichage mais des images plus grandes (ex 150 * 150) s'affichent quand meme. Pourquoi ?

up !

Reply

Marsh Posté le 11-04-2003 à 17:59:36    

Euh jsais pas perso moi ca marche :??:

Reply

Marsh Posté le 11-04-2003 à 18:11:05    

un return false ca renvoit quoi concretement ?

Reply

Marsh Posté le 11-04-2003 à 18:25:40    

ben un boolean qui vaut false ou true (c 2 constantes definie par le langage)
 
donc

Code :
  1. if(fnbGetImageSize($urlimage) == true) {
  2.    // Ok on traite
  3. }
  4. else {
  5.    // On traite pas
  6. }

Reply

Marsh Posté le 11-04-2003 à 18:47:59    

ex-floodeur a écrit :

jai un leger probleme : jai limité la hauteur des images à 100 et la largeur à 120 pour l'affichage mais des images plus grandes (ex 150 * 150) s'affichent quand meme. Pourquoi ?

c'est en testant que ca t'a fait ca ou bien c'est un visiteur avec qui ca c'est passé?


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 11-04-2003 à 21:22:13    

si l'image est un gif il faut savoir que l'on peut les truquer pour tromper les fonctions php (cf ce forum :d)

Reply

Marsh Posté le 11-04-2003 à 21:27:09    

Taureau a écrit :

si l'image est un gif il faut savoir que l'on peut les truquer pour tromper les fonctions php (cf ce forum :d)


 
comment .. connais pas ça ...  :??:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 11-04-2003 à 21:30:04    

Taureau a écrit :

si l'image est un gif il faut savoir que l'on peut les truquer pour tromper les fonctions php (cf ce forum :d)

oue,mais bon,si a l'affichage,tu met un width et height,l'image pourra pas etre plus grande et ca sera DTC :D


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 11-04-2003 à 21:30:49    

oui mais alors toutes tes images auront une taille fixe se qui est pas top dans certain cas  :D

Reply

Marsh Posté le 11-04-2003 à 21:40:44    

Taureau a écrit :

oui mais alors toutes tes images auront une taille fixe se qui est pas top dans certain cas  :D  

ben non,avec getziseimage,tu prend la taille de l'image,tu met ca dans le profil de la personne,et au moment d'afficher l'image,tu resort la taille en meme temps que le pseudo,la signature,etc...


Message édité par forummp3 le 11-04-2003 à 21:41:07

---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 11-04-2003 à 21:56:12    

je ne vois pas ce que tu veux dire là ? pourquoi stocker les param retourné par getimagesize s'ils sont faux ?
 
enfin bon là c juste une piste que je donne, si le test a été fait avec un jpeg alors le problème vient de son code

Reply

Marsh Posté le 11-04-2003 à 22:33:48    

Taureau a écrit :

je ne vois pas ce que tu veux dire là ? pourquoi stocker les param retourné par getimagesize s'ils sont faux ?
 
enfin bon là c juste une piste que je donne, si le test a été fait avec un jpeg alors le problème vient de son code

imagine que getsizeimage retourne une taille de 100x100 pixel,donc un taille toléré alors que l'image est plus grande,150x150 par exemple,he bien,avec height="100" width="100" l'image sera affiché avec une taille autorisé et on ne vera pas la taille reel.


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 11-04-2003 à 22:40:42    

j'avais compris mais si l'image fait 80x60 ... comment tu vas savoir si elle est valide ou pas ? tous tes logos seront alors déformés meme les "vrai" valide non?

Reply

Marsh Posté le 11-04-2003 à 23:27:54    

Cf le param $size[3] alros ;)

Reply

Marsh Posté le 12-04-2003 à 00:52:35    

Taureau a écrit :

j'avais compris mais si l'image fait 80x60 ... comment tu vas savoir si elle est valide ou pas ? tous tes logos seront alors déformés meme les "vrai" valide non?

tu pourra pas verifier si c'est une vrai taille,mais a l'affichage,tu n'aura pas plus que la taille autorisé.


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 12-04-2003 à 10:07:52    

et ça ne va pas déformer les images qui auront une taille inférieure ?

Reply

Marsh Posté le 12-04-2003 à 12:11:43    

Taureau a écrit :

et ça ne va pas déformer les images qui auront une taille inférieure ?

non,car pour chaque image,il y aura une taille differente dans le profil du membre.
Si tu veux que ca soit plus claire,au lien de mettre seulement dans la bdd l'url de l'image,tu met carrement le code html, c'est a dire <img src="url" heigth="x" width=y">


---------------
lecteur mp3 yvele's smilies jeux de fille
Reply

Marsh Posté le 12-04-2003 à 13:54:39    

mais alors tu ne pourras pas déterminer automatiquement la bonne taille, tu devras faire les modifs au coup par coup et à postériori  

Reply

Marsh Posté le 12-04-2003 à 17:53:53    

erf  
le param 3 de getimagesize() retour une chaine de car avec "height=xx width=yy" ... utilisez la ....
 

Code :
  1. $image = .... via une requete ds ta base
  2. $size=getimagesize($image);
  3. echo "<image src=\"$image\" border=\"0\" $size[3]>";


 
 

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed