[PHP] Dimensione immagini

  • Creatore Discussione Creatore Discussione Fede72
  • Data di inizio Data di inizio

Fede72

Nuovo Utente
27 Gen 2016
20
2
3
Ciao a tutti,
una domanda per molti banale ma di cui non conosco il codice,
in HTML per inserire un'immagine e definire le dimensioni è semplice
<img src="immagine.jpg" width="344" height="291" />
con PHP stampo l'immagine che prelevo da una cartella tramite mysql ma poi come definisco le dimensioni?
echo "<img src=immagine.jpg>";

Grazie
 
ciao
PHP:
<?php
//......
$nome_file=$riga['nome_file_immagine'];//o come si chiama il campo in tabella db
list($width, $height, $type, $attr) = getimagesize($nome_file);//e se ci vuole: il percorso
echo "<img src=\"$nome_file\" width=\"$width\" height=\"$height\">";
//....
?>
 
ottimo direi che funziona però mi si è aperto un ulteriore problema,
se inserisco l'immagine estratta da un DB MY SQL in una tabella HTML ricevo correttamente la dimensione della larghezza ma per l'altezza mi considera le dimensioni originali, posto tutto lo script così forse è più chiaro

PHP:
<?php
$tab = "imm";
$sqlquery = "SELECT * FROM $tab WHERE 1";
$result = mysql_query($sqlquery);
$number = mysql_num_rows($result);

$i = 0;
if ($number < 1) {
  print "<center><p>La ricerca non ha prodotto nessun risultato</p></center>";
}else{
  while ($number > $i) {
    $foto = mysql_result($result,$i,"foto");
 $descrizione = mysql_result($result,$i,"descrizione");
echo "<table><tr><td><img src=$foto width=\"30%\" height=\"30%\"></td><td>$descrizione</td></tr>\n</table>";
    $i++;
  }
}
mysql_close($link);
?>
 
Ultima modifica di un moderatore:
ciao
se metti sia la width che la height fisse (anche se in %) ti deforma l'immagine
io faccio così quando le immagini sono per dispositivo mobile
PHP:
<?php
//....
$file="file-Immagini/".$riga_m['file'];//ricavo da db il nome dell'inmmagine e gli do il percorso
list($width, $height, $type, $attr) = getimagesize($file);//lego i dati
if(isset($width)){//verifico la lettura (può capitare che non sia possibile)
    if($width >= $height){
        $max_w="30%";//fisso la larghezza
        $max_h=round($height/$width*30,1)."%";//adatto il % dell'altezza per non deformarw
    }else{
        $max_h="30%";//fisso l'altezza
        $max_h=round($width/$height*30,1)."%";//adatto il % di width
    }
    $stile="width: $max_w; height: $max_h;";//preparo lo style
}else{//non leggo metto solo la width
    $stile="width: 30%;";
}
echo "<img src=\"$file\" style=\"$stile\" title=\"$autore\" alt=\"$autore\">";
//....
?>


p.s.
quando scrivi il codice usa gli appositi bccode
 
Ho provato ma non mi funziona ma da quello che mi dici se lascio l'altezza in automatico mi mantiene le proporzioni dell'immagine giusto?
 
ottimo perfetto,
quando dico non funziona è perché in dreamweaver mi da una serie di errori, comunque ci riprovo,
per il momento va benissimo con l'auto.

Grazie per il tuo prezioso tempo/aiuto
 

Discussioni simili