Newsgroup: it.lavoro.professioni.webmaster
Titolo: php e dimensioni immagini

perdonate l'ignoranza,
sarà il caldo o forse no, ma come leggo le dimensioni di un immagine col
php?
Mi spiego meglio.
se ho un immagine xyz.jpg per leggere l'altezza faccio:
$img_height = imagesy("xyz.jpg");
Ma ho un paio di problemi con una dir piena di immagini:
in pratica con un readdir faccio leggere in sequenza tutte le immagini
contenute
in una dir e vorrei che poi cliccandoci sopra mi si aprano in una popup.
Fin qui ok, ma vorrei che la popup si adattasse anche alla dimensione
dell'immagine.
Per cui nel javascript vorrei usare le variabili $img_height e $img_width in
modo
che di volta in volta la popup si adatti all'immagine. Putroppo non funziona
:(
Farnetico?
Francesco II


Sbaglierai qualcosa...
Alloca, col PHP dici che riesci a leggere le dimensioni delle immagini..
Allora quando scrivi il codice html immagino che avrai tanti link (o
bottoni, è uguale) per aprire le diverse immagini nelle popup. Bene, fai una
funzione javascript che apra una popup ricevendo in parametro il nome
dell'immagine e le dimensioni della finestra.
Ovviamente per ogni bottone (o link) scrivi con il PHP i parametri che devi
passare (nome dell'immagine e dimensioni) che hai precedentemente ottenuto.
Quando cliccherai sul link chiamerai la funzione javascript con i parametri
giusti.
Sarà sempre questa funzione a passare a sua volta in parametro il nome
dell'immagine ad una seconda pagina PHP che sarà quella che mostra
l'immagine dentro la popup.
Spero di essermi spiegato.
Ciao

 $img_height = imagesy("xyz.jpg");
$size=getimagesize("xyz.jpg")
$img_width=$size[0];
$img_height=$size[1];
-- 
Pixael.com di Giuseppe Milo
www.pixael.com

 $img_height=$size[1];
grazie Josh.
purtroppo il probelma rimane :(
forse faccio prima a postare il codice:
<tr>
<?php
$dir = "images";
$dirth = "images/thumbs";
$columns = 4;
if ($handle = opendir($dirth)) {
   while (false !== ($file = readdir($handle))) {
   if($file != "." && $file != "..")
 echo "<td><a href=\"javascript:popUpWindow('$dir/$file' , 0 , 0 , 500 ,
500 );\" ><img src=$dirth/$file border=0></a></td>";
 ++$i;
   if($i == $columns) { print "</tr><tr>";
   $i = 0; }
   }
   closedir($handle);
}
?>
  </tr>
come gli faccio leggere l'immagine generica $file nel codice che mi hai
postato?
ho provato ma non funziona.
Mi sto rincoglionendo per sta cazzata.
Francesco II

 500 );\" ><img src=$dirth/$file border=0></a></td>";
Si ma se come parametri del javascript gli passi 500 e 500 e non delle
variabili calcolate a seconda dell'immagine, si aprirà sempre una finestra
quadrata uguale, lo vuoi capire o no???????

 ha scritto

ti pregherei di non trattarmi come un deficiente.
lo capisco che se non passo le variabili, col cazzo che mi si apre la
finestra
della dim dell'immagine.
Se hai letto tutto il codice non c'è alcun riferimento alla dimensione delle
img
ne col imagesx o imagesy ne con il codice suggeritomi da Josh.
Ho scritto infatti di aver provato ma non funziona.
Allora ho pensato bene di postare il codice dove vorrei inserire quelle
poche
righe che mi facciano aprire la popup come dico io.
Quello che vedi in pratica è il codice che sto usando ora, con popup 500x500
Francesco II


Non ti tratto come un deficiente, ma se tu non ti spieghi come si fa a
capire COSA vuoi che ti venga dato come aiuto?
Hai postato un codice senza dire se ha degli errori di runtime oppure cosa
NON FA che invece dovrebbe fare.
1) Se il problema è ottenere le dimensioni delle immagini e non riesci a
farcela, tutto il codice che hai postato è assolutamente inutile, dovresti
documentarti su 
php.net
. o cmq chiedere se qualcuno conosce un altro
metodo..
2) Se invece riesci in qualche modo a capire la dimensione delle immagini
allora perchè nel codice che hai postato non ne fai riferimento?
Tu ci fai vedere un codice che apparentemente fa quello che deve fare! (un
elenco di immagini-link che aprono via js delle pop-up 500x500 con
all'interno l'immagine stessa)
Allora?

 postato?
mmmmmmmmmmmmm nel post principale ho letto che vuoi far aprire la popup con
la stessa dimensione delle foto
quindi dovresti leggere come ti ho detto width e height dell'immagine e poi
stamparla nella funzione popupwindow
$size=getimagesize($file)
$img_width=$size[0];
$img_height=$size[1];
e poi
echo "<td><a href=\"javascript:popUpWindow('$dir/$file' , 0 , 0 ,
$img_width,$img_height );\" ><img src=$dirth/$file border=0></a></td>";


 $img_width,$img_height );\" ><img src=$dirth/$file border=0></a></td>";
ti rignrazio nuovamente Josh.
il fatto è, come ho già detto a Giacomo, che non funziona.
ho sostituito width e height (500 per capirci) con le variabili ottenute
dal getimagesize() ma non funziona. Continuerò a sbagliare qualcosa.
comunque ho risolto in un altro modo. Uso due pagine separate e le immagini
le leggo da db invece che usare il readdir.
Volevo solo fare una prova e non mi è riuscita. Grazie ugualmente
Francesco II