Problema Upload file con Internet Explorer

Niente...proprio non capisco

Ho settato i permessi di scrittura e lettura per i file(in locale)

Ora salva sia l'immagine originale che qualla ridimensionata (tb_immagine.jpg/.png/.gif ecc) nella cartella "files".

Succede che , quando vado a visualizzare la gallery , mi da sempre lo stesso odioso problema (la x rossa sulla thumbnails).

Ho provato ad aprire una delle immagini "tb_" ridimensionate che ha salvato nella cartella , e mi da il seguente errore.

"Impossibile aprire il file. Errore interno"
(l'ho aperta con fireworks, mentre con il visualizzatore di immagini windows mi da il classico "anteprima non disponibile")

Re-posto il file php "function.php" che dovrebbe ridimensionare l'immagine e salvarla(cosa che fa , ma la fa male. Ovviamente nel mio caso:crying:) nella cartella che ho scelto

PHP:
<?php
function makeThumb($dir,$pic,$n,$t){
  @list($width, $height, $type, $attr) = @getimagesize($pic);
  $max_w = 100;
  $max_h = 100;
  $ratio = @min($max_w/$width,$max_h/$height);

  // Verifico che l'immagine originale sia più grande delle dimensioni massime 100*100pxl
  if ($ratio < 1){
    // Individuo le nuove dimensioni da assegnare all'immagine
    $w = @floor($ratio*$width);
    $h = @floor($ratio*$height);

    // creo una nuova immagine con le dimensioni appena calcolate
    $thumb = @imagecreatetruecolor($w,$h);
    if ($t == 'image/jpeg'){$temp = @imagecreatefromjpeg($pic);}
    elseif ($t == 'image/gif'){$temp = @imagecreatefromgif($pic);}
    elseif ($t == 'image/png'){$temp = @imagecreatefrompng($pic);}

    // ridimensiono l'originale e salvo nella cartella di destinazione
    @imagecopyresized($thumb,$temp,0,0,0,0,$w,$h,$width,$height);
    if ($t == 'image/jpeg'){@imagejpeg($thumb,"$dir/tb_".$n, 75);}
    elseif ($t == 'image/gif'){@imagegif($thumb,"$dir/tb_".$n, 75);}
    elseif ($t == 'image/png'){@imagepng($thumb,"$dir/tb_".$n, 75);}
  }
}
?>

Mentre questa è la chiamata alla funzione makeThumb(appunto quella sopra) che si trova nel file php "form.php"

PHP:
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
Titolo:<br />
<input name="titolo" type="text" size="20"><br />
Descrizione:<br />
<textarea name="descrizione" cols="20" rows="4"></textarea><br />
Immagine:<br />
<input type="file" name="imagefile"><br />
<input type="submit" name="Submit" value="Submit">
<?php
@include 'function.php';

$titolo = @addslashes($_POST['titolo']);
$descrizione = @addslashes($_POST['descrizione']);
$nome = @addslashes($_FILES['imagefile']['name']);
$path = $path_img . stripslashes($nome);
$tipo = @addslashes($_FILES['imagefile']['type']);

// creo la miniatura
@makeThumb($path_img,$path,$nome,$tipo);
.
.
.
?>
 
Ultima modifica:
quanto grandi sono le immagini che vai a ridimensionare? che non sia quello l'errore?
il codice che usi è uguale a quello che utilizzo io in un sito e funzia.
esamina tutto lo script che non ci sia quallche errore di digitazione
:byebye:
 
Il codice l'ho copiato e incollato.

Ho provato con una foto 500*313, di 64KB, ma questo non credo che c'entra.

In teoria la funzione dovrebbe ridimensionare tutte le immagini di qualsiasi dimensione a parte (ovviamente) quelle inferiori a 100*100 pixel
 
riassumiamo il tutto:
salvataggio nel db: ok
ridimensionamento: ok
salvataggio foto grandi e tumb: ok

errore: non visualizza le foto tumb

ora ho rivisto la tua pagina e risulta (per una tumb)

aspetta non capisco perche non viene bene il copia incolla

prova a verificare, perche secondo me dovrebbe risultare:



:byebye:
 
Ultima modifica:
nella tua pagina risulta

<b>Titolo:</b><br /><b>Autore:</b> <br /><a href="visual.php?id=15"><img src="tb_foto11.jpg" border="0"></a><br /><i>Descrizione:</i></td>


secondo me dovrebbe essere

<b>Titolo:</b><br /><b>Autore:</b> <br /><a href="visual.php?id=15"><img src="files/tb_foto11.jpg" border="0"></a><br /><i>Descrizione:</i></td>
 
sono andato a riveder un mio sito che utilizza la galleria uguale, infatti mi risulta


<b>particolari - parts</b><br /><a href="visual.php?id=10" target="centrale"><img src="files/tb_afettatrice01-01.jpg" border="0"></a><br />particolari cromati - crhomium plated parts</td>
 
verifica in visual.php

// recupero i dati dell'immagine selezionata
$f = @mysql_fetch_array($res) or die (mysql_error());
$titolo = stripslashes($f['Titolo']);
$nome = stripslashes($f['Nome']);
$descrizione = stripslashes($f['Descrizione']);
// stampo a video l'imagine e le relative informazioni
$path_im= "files/"; //prova della cartella
echo "<img src=\"" . $path_im . $nome . "\" border=\"0\"></a>";
//echo "<img src=\"" . $path_img . $nome . "\" border=\"0\">";
echo "<br />" . $descrizione . "<br><br>";
 
Allora...

Sto facendo delle prove in locale...(non sul sito, infatti è in locale che funziona "quasi" tutto).

Ora riscrivo tutto e faccio l'upload dei file in remoto.

Ti faccio sapere a breve.

Grazie.
 
L'errore non è quello che pensi te purtroppo (il problema è che non riesce ad aprire/visualizzare la thumb tb_file.jpg/png ecc, ma la salva perfettamente nella cartella "files")

Infatti

In "form.php"

PHP:
@include'config.php';
.
.
.
 // stampo la cella contenente l'immagine
echo "<img src=\"" . $path_img . "tb_" . $nome . "\" border=\"0\"></a>";

dove $path_img si trova in "config.php"
ed è:

PHP:
//connetto al database
$path_img = 'files/';

PS.Sto ancora lavorando in locale
 
Ultima modifica:
Ho provato in remoto...

Funziona.


Evidentemente era un problema riguardante i permessi di scrittura e lettura sulla cartella "files"(secondo me erano abilitati solo i permessi di scrittura e non di lettura , anche se le foto grandi le visualizzava; mha)
Comunque finalmente ho risolto.

Grazie a tutti per la pazienza!:D

:byebye:
 

Discussioni simili