Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - dimensione massima immagini
Forum - PHP - dimensione massima immagini

Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 21:37
Lunedì, 14/12/2009
scusate, ditemi se domando troppo.... di php sono esattamente a livello zero però mi servono delle basi per un piccolo sito dove uppare delle immagini.... allora, questo è il mio codice attuale (copiato da internet e leggermente modificato):

Codice sorgente - presumibilmente Php

  1. <?php
  2. $dir='uploads';
  3.          if ($handle = opendir($dir))
  4.          {
  5.            while (false !== ($file = readdir($handle)))
  6.            {
  7.              //qui poi mettere i filtri per le estenzioni valide (puoi anche toglierle, qui per
  8.              //esempio ci sono file di immagini jpg,bmp,gif e cmq dovresti escludere sempre
  9.              // due file nominati '.' e '..' non scordarlo!!)
  10.              if ( (substr($file,strpos($file,'.')+1)=='jpg' ) or
  11.                  (substr($file,strpos($file,'.')+1)=='bmp') or
  12.                 ( substr($file,strpos($file,'.')+1)=='gif' ) )
  13.              {
  14.                $cartella[$i]=$file;
  15.                $i++;
  16.              }
  17.            }
  18.            closedir($handle);
  19.          }
  20.  
  21. foreach ($cartella as $file)
  22. {
  23.     echo '<IMG SRC="uploads/'.$file.'"><br>';
  24. }
  25.  
  26.  
  27.  
  28. ?>



allora: come voi di sicuro capirete meglio di me questo codice prende le immagini da una cartella (/uploads) e le mostra una dopo l'altra...
il problema è che spesso le dimensioni delle immagini con cui ho a che fare sono troppo grandi (non nel senso di size, ma proprio di altezza e larghezza)...
chiedo troppo se vi domando un aiuto nel creare un pezzo di script che, controllate le dimensioni dell'immagine, la scali PROPORZIONALMENTE e la mostri in seguito? possibilmente (e qui domando: è possibile?) senza diminuirne la qualità (cioè lasciando inalterato il il peso in kb per capirci)....
spero siate clementi :) capisco che non sia il massimo postarmi il codice già fatto ma davvero non ho competenze... ma vanno comunque bene anche aiuti o suggerimenti, non disdegno nulla :) grazie in anticipo a tutti :):)


Perchè per spegnere windows bisogna cliccare su START?
PM Quote
Avatar
cassin.simone (Member)
Guru


Messaggi: 1051
Iscritto: 03/06/2009

Segnala al moderatore
Postato alle 13:24
Martedì, 15/12/2009
Bhe...qui serve più che altro l'html ovvero devi impostare nel tag img l'altezza e la larghezza...


Hey, sono anche su Twitter! www.twitter.com/simonecassin
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 14:25
Martedì, 15/12/2009
esatto

Codice sorgente - presumibilmente Plain Text

  1. echo "<img src='$percorsofilecompleto' width='larghezza' Height='altezza'>";



:ot:

lol per la tua firma :rotfl:

Ultima modifica effettuata da Thejuster il 15/12/2009 alle 14:56


PM Quote
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 14:45
Martedì, 15/12/2009
ma la qualità dell'immagine rimane la stessa o viene ridimensionata anche quella? e per porre una condizione del tipo "ridimensiona immagine solo se le dimensioni dell'immagine superano xmax e ymax"?? in html non si può fare o sbaglio?


Perchè per spegnere windows bisogna cliccare su START?
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 15:01
Martedì, 15/12/2009
ma la qualità non c'entra :rotfl:

ti cambia la dimensione dell'immagine non la qualità.

Codice sorgente - presumibilmente Plain Text

  1. $size = getimagesize("http://www.miosito.it/logo.png");


Ultima modifica effettuata da Thejuster il 15/12/2009 alle 15:20


PM Quote
Avatar
cassin.simone (Member)
Guru


Messaggi: 1051
Iscritto: 03/06/2009

Segnala al moderatore
Postato alle 16:54
Martedì, 15/12/2009
Quoto thejuster e aggiungo che devi fare un ciclo che controlla le misure e, se sono superiori ad un certo tot da te impostato (consiglio di utilizzare una variabile per questo in modo da poterlo modificare facilmente successivamente) te le ridimensiona. (Periodo lunghetto eh?)


Hey, sono anche su Twitter! www.twitter.com/simonecassin
PM Quote
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 19:17
Martedì, 15/12/2009
Codice sorgente - presumibilmente Php

  1. <?php
  2. $dir='uploads';
  3.  
  4.  
  5.          if ($handle = opendir($dir))
  6.          {
  7.            while (false !== ($file = readdir($handle)))
  8.            {
  9.              //qui poi mettere i filtri per le estenzioni valide (puoi anche toglierle, qui per
  10.              //esempio ci sono file di immagini jpg,bmp,gif e cmq dovresti escludere sempre
  11.              // due file nominati '.' e '..' non scordarlo!!)
  12.              if ( (substr($file,strpos($file,'.')+1)=='jpg' ) or
  13.                  (substr($file,strpos($file,'.')+1)=='bmp') or
  14.                 ( substr($file,strpos($file,'.')+1)=='gif' ) )
  15.              {
  16.                $cartella[$i]=$file;
  17.                $i++;
  18.              }
  19.            }
  20.            closedir($handle);
  21.          }
  22.  
  23. foreach ($cartella as $file)
  24. {
  25.  
  26. list($width, $height, $type, $attr) = getimagesize("uploads/'.$file'");
  27.  
  28. if (($width > 160) || ($height > 180)) {
  29.       $msg = "<p>Dimensioni non corrette!!</p>";
  30. }else{  
  31.  
  32.     echo '<IMG SRC="uploads/'.$file.'"><br><br>';
  33. }
  34. }
  35.  
  36.  
  37.  
  38. ?>




è giusto così il ciclo? continua a stampare a video tutte le immagini (scusate quindi non è giusto, mi rispondo da solo xd)... cosa sbaglio? l'uso di getimagesize?

Ultima modifica effettuata da riccardo_2193 il 15/12/2009 alle 19:19


Perchè per spegnere windows bisogna cliccare su START?
PM Quote
Avatar
riccardo_2193 (Normal User)
Rookie


Messaggi: 29
Iscritto: 20/11/2009

Segnala al moderatore
Postato alle 17:31
Mercoledì, 16/12/2009
nessuno mi sa dire dove sbaglio?? :(


Perchè per spegnere windows bisogna cliccare su START?
PM Quote