Upload di file in Php

Siti dinamici con PHP
Impara a creare siti dinamici professionali con PHP

Scritto da Luca Ruggiero nella sezione Php

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.

I più cliccati della sezione Php

:: Redirect in Php (102.458)

:: Refresh temporizzato in PHP (27.395)

:: Scrivere il codice di sicurezza CAPTCHA in Php (25.988)

:: Un carrello della spesa in PHP (22.679)

:: Creare un menu dinamico in Php (20.834)

:: Pagamenti online con PayPal e PHP (17.397)

:: Convertire una stringa in maiuscolo e in minuscolo in Php (15.773)

:: Inviare email in formato Html con Php (15.704)

:: Ottenere le dimensioni di un'immagine con PHP (15.023)

:: Indicare il percorso della pagina corrente in Php (14.511)

IN EVIDENZA
DOWNLOAD