$_FILES
X

$_FILES

Superglobalna spremenljivka $_FILES se uporablja za zbiranje podatkov iz HTML obrazca za vrsto file. Ta spremenljivka hrani informacije o naloženih datotekah, vključno z imenom datoteke, začasno shranjeno potjo, velikostjo datoteke, vrsto mime in morebitnimi napakami, ki so se pojavile med prenosom.

$_FILES
$_FILES
PRIMER
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['uploadedFile'])) {
    $file = $_FILES['uploadedFile'];

    // Preveri ali je prišlo do napake med prenosom
    if ($file['error'] === UPLOAD_ERR_OK) {
        $tmpName = $file['tmp_name'];
        $name = basename($file['name']);
        $uploadDir = 'datoteka_uporabnika/';

        // Ustvari mapo, če ne obstaja
        if (!is_dir($uploadDir)) {
            mkdir($uploadDir, 0777, true);
        }

        // Premakni začasno naloženo datoteko na določeno lokacijo
        if (move_uploaded_file($tmpName, $uploadDir . $name)) {
            echo 'Datoteka je bila uspešno naložena!';
        } else {
            echo 'Napaka pri premiku naložene datoteke.';
        }
    }
}
?>


<form action="" method="post" enctype="multipart/form-data">
    <label for="uploadedFile">Izberite datoteko:</label>
    <input type="file" name="uploadedFile" id="uploadedFile">
    <input type="submit" value="Naloži datoteko">
</form>
            
REZULTAT
Datoteka je bila uspešno naložena.
            

V tem primeru obrazec omogoča uporabniku, da izbere datoteko za nalaganje. Ko je obrazec poslan, se preveri, če je prišlo do napake. Če ni napak, se datoteka premakne iz začasne lokacije na želeno mesto. Ker je v skripti napisano mesto datoteka_uporabnika se nam v isti mapi, ki jo imamo za izdelavo spletne strani, naredi nova mapa z imenom, ki smo ga vpisali. V to mapo se potem shranjuje vse, kar nalagamo na spletni strani, ko zaženemo PHP skript.

$_FILES polje vsebuje informacije v naslednji strukturi:

  1. $_FILES['uploadedFile']['name'] - Originalno ime naložene datoteke
  2. $_FILES['uploadedFile']['type'] - MIME vrsta datoteke
  3. $_FILES['uploadedFile']['tmp_name'] - Začasna lokacija datoteke
  4. $_FILES['uploadedFile']['error'] - Morebitna napaka, ki se je pojavila med prenosom
  5. $_FILES['uploadedFile']['size'] - Velikost datoteke v bajtih