Upload pagina

Het uploaden van een file gebeurd door een aparte input type. Zoals je misschien standaard gewend bent gebruik je text, password etc. Deze keer gebruiken we het type file

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    <input type="file" name="foto" value="" size="30" />


Als je dat in een html file neerzet krijg je naast het input veld een knop ‘bladeren’ of ‘browse’ te zien. Ook moet er in het form het één en ander worden aangepast. Hierin geef je het MIME-Type mee.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    Enctype="multipart/form-data"


De code van de file winkelUpload komt er dan zo uit te zien

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<html>
<head>
    <title>Foto winkel => Upload</title>
</head>
<body>

<form method="POST" action="<?php basename ($_SERVER['PHP_SELF']); ?>" enctype="multipart/form-data" />
    
        <table>
        
            <tr>
                    <td>Kies een foto</td>
               </tr>
            
               <tr>
                    <td><input type="file" name="foto" size="30" /></td>
               </tr>
            
                <tr>
                    <td>Beschrijving</td>
                </tr>
            
                <tr>
                    <td><textarea name="beschrijving" cols="30" rows="4"></textarea></td>
                </tr>
            
                <tr>
                    <td>Uw naam</td>
               </tr>
            
                <tr>
                    <td><input type="text"  name="naam" size="40" /></td>
               </tr>
            
               <tr>
                    <td>Uw emailadres</td>
               </tr>
            
                <tr>
                    <td><input type="text" name="email" size="40" /></td>
                </tr>
            
               <tr>
                    <td><input type="submit" value="Uploaden" /></td>
                </tr>
        
        </table>
    
</form>
    
</body>
</html>


Het enigste waar je op moeten letten is dus de enctype. Als je dit niet in je form hebt staan zal je nooit bestanden kunnen uploaden. Let daar dus op!

Even wat theorie

Als je een bestand upload naar een webserver gebeurt er het volgende. Het bestand wordt opgeslagen in een tijdelijke directory. Deze locatie wordt aangegeven met de aanduideing upload_tmp_dir in de php.ini. Daarna maakt PHP een superglobal met de naam $_FILES. Hierin wordt een array geplaatst met de naam van het formulier element. In ons geval dus de array ‘foto’.
Er zijn nu verschillende dingen die je via de superglobal kan opvragen.

- De naam
- De type
- De size
- Tmp_name (De tijdelijke naam die door PHP is toegkend)
- Error

Dus, als ik de naam van het bestand wil weten kan dat op de volgende manier

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$_FILES
['foto']['name']
?>


Als er tijdens het uploaden een fout is opgetreden kan je die ook makkelijk bekijken via de superglobal. Straks in het upload script zullen we deze foutmeldingen behandelen.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Inleiding
  2. Index pagina
  3. Benodigd heden
  4. Upload pagina
  5. Configuratie bestand
  6. Uploaden (PHP)
  7. Afronden uploaden
  8. Slot

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.