Stò facendo un sito per amici che non sanno nulla di php e faticano a usare il pc. Ho dato loro una pass e uno username. Vorrei fare in modo che riescano a inserire foto con semplicità attraverso form... Mi sapete consigliare qualche script?
ho fatto tutto, mi inserisce le img nella cartella ma poi quando vado su gallery.php mi compare una pagina bianca e senza errori... Dove ho peccato secondo te?
io tempo fa ho creato uno script che permette di inserire delle immagini o dei file sul server, per poi essere visualizzate o scaricate.
Puoi dare un'occhiata qui, se ti piace il sistema ti passo i sorgenti. (attualmente lo utilizzo per inserire sporadicamente dei compiti)
Il fatto è che l'ho realizzato tempo fa (modificando un'altro script) ed è possibile che ci siano delle falle, dovrei ricontrollare il codice.
Non necessita di database, salva le informazioni sui file di testo.
dovresti trattare le gallerie come delle categorie; in un database crei una tabella "album" e ogni galleria avrà il suo id che verrà utilizzato come riferimento nei record della tabella dedicata alle immagini.
Scusa se cambio leggermente argomento ma sempre di upload e rid. di img si tratta.
Stò cercando di fare un'upload di un'immagine e poi di ridimensionarla.. L'upload avviene correttamente mentre sbglio qualcosa nel ridimensionamento..
Mi potete da un aiuto? Ecco di seguito il codice
/* upload di files com PHP */
// specifichiamo il percorso in cui si trova la cartella destinata a ricevere i files
$percorso_uplod ="../Img/news/";
// memorizziamo le informazioni temporanee e originali riguardo il file da trasferire
$percorso_temporaneo = $_FILES["nome_file"]["tmp_name"];
$nome_file = $_FILES["nome_file"]["name"];
// trasferiamo il file con "copy()"
// e chiediamo un messaggio di conferma
if (copy($percorso_temporaneo, $percorso_uplod . $nome_file))
{
echo "File inviato con successo |";
// altrimenti stabiliamo con else un messaggio da visualizzare in caso di errore
}
else
{
echo "Impossibile eseguire l'upload di questo file";
}
sono riuscito a inserire il codice funzionante x il resize delle immagini. Lo posto xchè potrebbe servire ad altri e vi ringrazio tutti x l'aiuto:
PS: Io ho inserito il resize solo se l'immagine supera i 430 px di larghezza..
<?
////////////////////////////////* upload e resize di files com PHP *//////////////////////
// specifichiamo il percorso in cui si trova la cartella destinata a rcevere i files
$percorso_uplod ="../Img/news/";
// memorizziamo le informazioni temporanee e originali riguardo il file da trasferire
$nome_file_tmp = $_FILES["nome_file"]["tmp_name"];
$nome_file = $_FILES["nome_file"]["name"];
//se ci sono immagini verifico la larghezza per eventualmente ridimensionarla a 430
if($nome_file!="")
{
// apertura dell'immagine originale
$src = imagecreatefromjpeg($nome_file_tmp) or die ("Impossibile aprire l'immagine originale");
$larghezza = imagesx($src);
if ($larghezza>430)
{
$img = $nome_file; // percorso al file dell'immagine
$dest = $percorso_uplod.$nome_file; // directory di salvataggio delle miniature create
// dimensioni della miniatura da creare
$thumbWidth = 430; // larghezza
$thumbHeight = 322; // altezza
// livello di compressione della miniatura
$thumbComp = 100;
// creazione dell'immagine della miniatura
$thumb = imagecreatetruecolor($thumbWidth, $thumbHeight) or die("Impossibile creare la miniatura");
// copio l'immagine originale in quella della miniatura ridimensionandola
imagecopyresized($thumb, $src, 0, 0, 0, 0, $thumbWidth, $thumbHeight, imageSx($src), imageSy($src)) or die("Impossibile ridimensionare l'immagine");
// salvataggio miniatura
imagejpeg($thumb, $dest, $thumbComp) or die("Impossibile salvare la miniatura");
}else{
// trasferiamo il file con "copy()"
// e chiediamo un messaggio di conferma
copy($nome_file_tmp, $percorso_uplod . $nome_file);
}
}
?>
Se ci pensi non è una cosa particolarmente difficile; in pratica funziona come le categorie per gli articoli.
Ti fai una tabella per le categorie:
--------------------------
id
nome_raccolta
--------------------------
Poi nel form per l'inserimento delle immagini inserisci un campo per la scelta della categoria (una select ad esempio).
Nella tabella delle immagini inserisci un campo in cui memorizzare l'id della categoria di ogni foto e magari uno anche per il nome della categoria.
tu dici:
"Nella tabella delle immagini inserisci un campo in cui memorizzare l'id della categoria di ogni foto e magari uno anche per il nome della categoria."
Non sò come farlo... io ho fatto così:
INSERIMENTI:
$query1 = "INSERT INTO images (Titolo, Descrizione, Nome, Tipo,nomegall) VALUES('$titolo','$descrizione','$nome','$tipo','$galleria')";
$query2 = "INSERT IGNORE INTO galleries (nomegall) VALUES ('$galleria')";
MENTRE LA SELECT
$query= "SELECT Titolo, Descrizione, Nome, Tipo, images.nomegall AS galleries, altro FROM images LEFT JOIN galleries ON images.nomegall = galleries.nomegall";
ciao Claudio seguendo i tuoi consigli sono riuscito a crearmi il sistema di gallerie personalizzato.. Mi sono appoggiato a un database mysql creando 2 tabelle in relazione e devo dire che sono soddisfatto.
Una cosa non riesco ancora a fare e non sò come fare: l'upload multiplo di immagini...
Infatti io riesco solo a caricare 1 img alla volta..