INTERNET EXPLORER? Ti consiglio di navigare questo sito con Mozilla Firefox oppure con Google Chrome.

Upload di file in Php

Autore: Luca Ruggiero | Tell a Friend

Corso PHP
Impara a creare siti dinamici professionali con PHP!

Corso MySQL
Impara a gestire il famoso database gratuito!

Corso Linux
Impara a gestire il famoso sistema operativo open source!

Il Php mette a disposizione la funzione move_uploaded_file() per eseguire il trasferimento di un file sul server. Detta funzione accetta tre parametri obbligatori, ovvero il percorso del file sul client che lo invia, il percorso della directory remota in cui caricare il file ed il nome con cui dovrà essere caricato il file, che per default è il nome originario del file sul client.

Si crei il file upload.html e vi si inserisca un modulo Html:

<html>
<body>

<form method="post" action="upload.php" enctype="multipart/form-data">
    <input type="file" name="miofile">
    <input type="submit" value="Upload">
</form>

</body>
</html>
Di seguito il codice commentato del file upload.php
<?PHP
    // RECUPERO I PARAMETRI DA PASSARE ALLA FUNZIONE PREDEFINITA PER L'UPLOAD
    $cartella = 'upload/';
    $percorso = $_FILES['miofile']['tmp_name'];
    $nome = $_FILES['miofile']['name'];
    // ESEGUO L'UPLOAD CONTROLLANDO L'ESITO
    if (move_uploaded_file($percorso, $cartella . $nome))
    {
        print "Upload eseguito con successo"; 
    }
    else
    {
        print "Si sono verificati dei problemi durante l'Upload"; 
    }
?>
Oltre alla funzione move_uploaded_file() vediamo che il codice del file upload.php viene aperto con un riferimento all'oggetto $_FILE[][] che lavora come variabile d'ambiente nel recupero di informazioni sul file specificato come primo parametro; il secondo parametro è rappresentato dalla collezione a cui fa riferimento $_FILE[][] nel recupero delle informazioni. E' possibile sfruttare questo oggetto per eseguire controlli, ad esempio, sul tipo di file e sulle sue dimensioni, per ottenere Upload controllati e coerenti a seconda delle esigenze dell'amministratore del sito, ad esempio solo immagini in un certo formato, file di testo, ecc...

Per ottenere queste informazioni è possibile utilizzare le collezioni
$_FILES['miofile']['type']
$_FILES['miofile']['size']
Il valore di size è espresso in byte.

IN EVIDENZA
HOT LINKS