Ciao a tutti! Ho un nuovo, piccolo problemino, dopo quello del str_replace()...
Questa volta gioco con le immagini. Sto cercando di creare una galleria di immagini
tramite un upload fatto dagli utenti. Idea centrale dello script è di creare
un thumbnail (una versione ridotta) del file inviato in modo da caricare le anteprime piccole
più velocemente.
Nel file dove viene effettuato l'upload, tra le prime righe, c'è:
codice:
<?php
if(isset($_FILES['imagewn']))
{
copy( $_FILES['immagine'] , "c:\\Intepub\\wwwroot\\public\\galleria\\" ); // Gira IIS
createthumb($_FILES['imagewn']['tmp_name']);
}
?>
E nel file delle funzioni (un file che viene incluso all'inizio dello script)
c'è la definizione della funzione createthumb().
Prima ve la descrivo in breve (perchè in effetti è un aggregato di script più
piccoli trovati qui e là su internet e adattati alle mie esigenze): alla funzione
passo come parametro il nome del file e la cartella, e lei prende questo percorso
per ridurre l'immagine richiesta:
codice:
<?php
function createthumb($uploaded_file)
{
$unic_string = md5(time()); //Lo uso per attribuire un nome unico al filename
# Controllo dell'estensione per vedere quale funzione utilizzare e definizione nomeunivoco
$ext = strtolower(end(explode('.', $uploaded_file)));
//Definizione VARIABILI
$immgrande_path = "c:\\Intepub\\wwwroot\\public\\galleria\\";
$immgrande = "1_" . $unic_string . "." . $ext;
$immpiccola_path = $immgrande_path;
$immpiccola = "thumb_1_" . $unic_string . "." . $ext;
$grandeabs = $immaginegrande_path . $immgrande;
$piccolaabs = $immpiccola_path . $immpiccola;
$httpurl_big = "http://localhost/public/gallery/$immgrande";
$httpurl_small = "http://localhost/public/gallery/$immpiccola";
$hG = 97;
$wG = 127;
rename("$immaginegrande_path/$uploaded_file", $grandeabs);
if(file_exists($grandeabs))
{
if ($ext == 'jpg' || $ext == 'jpeg') {
createjpg_thumb() //Questa funziona
}
}
else
create_alert("Impossibile trovare il file source!"); //Questa è un'altra funzione che crea una finestra js di errore.
}
Quello che mi ritorna è proprio una finestra js con scritto "Impossibile trovare il file source"
Può essere che magari è Aruba che non lascia i permessi di fare questo? (Se state per rispondere che i percorsi per Aruba sono sbagliati: Lo so, i percorsi nello script con Aruba non funzionano :P)
Grazie 1000 in anticipo
Marco