|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2013
Messaggi: 62
|
[PHP] Upload file e anteprima degli stessi nella medesima pagina
Ciao a tutti, vorrei creare una pagina php contenete delle immagini. Questa pagina deve anche consentire agli utenti di inserire delle nuove immagini.
Ho creato il form e funziona perchè effettivamente mi carica le nuove immagini nella cartella corretta. Il problema è che al caricamento della pagina mi visualizza il form ma non le altre immagini già presenti, queste me le visualizza solo quando inserisco una nuova foto. La struttura dei miei file è: file index.php: stampo il form in html richiamo una funzione php che mi controlla l'inserimento delle immagini. Se non c'è selezionata nessuna immagine nel form, mi stampa una stringa, altrimenti carica l'immagine richiamo una funzione che mi mostra tutte le immagini presenti nella cartella Come detto sopra, al caricamento della pagina, vedo il form e basta (non vedo le altre immagini presenti nella cartella). Quando invio una nuova foto vengono visualizzate tutte le immagini. Quindi, in pratica, è come se il form mi "bloccasse" la visualizzazione di tutte le immagini. Guardando su internet ho trovato molti esempi di upload ma divisi in due pagine differenti (una per la visualizzazione di tutte le immagini e una per l'upload) mentre io vorrei che venisse fatto tutto nella stessa pagina.. E' possibile farlo? Se si, come? Grazie mille! |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Nov 2013
Messaggi: 62
|
Aggiungo il mio codice così magari è più chiaro..
Nel file photogallery.php Codice:
<form method="POST" enctype="multipart/form-data" action="photogallery.php">
<input type="hidden" name="action" value="upload"/>
<label>Immagine da caricare:</label>
<input type="file" name="image"/><br/>
<input type="submit" name="invia" value="Invia"/>
</form>
<?php
verificaImmagine();
visualizzaImmagini();
?>
Codice:
function verificaImmagine() {
if(!isset($_FILES["image"]))
die("Errore\n");
$tmp_nome = $_FILES["image"]["tmp_name"];
$type = $_FILES["image"]["type"];
$nome = $_FILES["image"]["name"];
if(move_uploaded_file($tmp_nome, CARTELLA_IMG . "/" . $nome))
echo "Inserimento effettuato";
else
echo "Errore";
}
function visualizzaImmagini() {
$connect = dbConnect();
// ... codice che permette la visualizzazione delle immagini presenti nella cartella ...
mysql_close($conn);
}
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: Nov 2013
Messaggi: 6
|
Codice PHP:
Avendo inserito la funzione che ti visualizza le immagini (visualizzaImmagini) dopo la funzione che ti esegue l'upload (verificaImmagine), quando non selezioni alcuna immagine da inviare viene lanciato die() e le immagini non vengono visualizzate.
__________________
Motherboard: AsRock B85M-HDS CPU: Intel i7 4770 @ 3.40GHz RAM: Kingston 8GB @ 1666MHz |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Nov 2007
Città: Alcamo
Messaggi: 103
|
La funzione die interrompe tutto... prova così
Codice:
function verificaImmagine() {
if(!isset($_FILES["image"]))
echo("Errore\n");
else{
$tmp_nome = $_FILES["image"]["tmp_name"];
$type = $_FILES["image"]["type"];
$nome = $_FILES["image"]["name"];
if(move_uploaded_file($tmp_nome, CARTELLA_IMG . "/" . $nome))
echo "Inserimento effettuato";
else
echo "Errore";
}
}
|
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Nov 2013
Messaggi: 62
|
Perfetto, funziona! Grazie ad entrambi
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:12.



















