file_upload met wamp server

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Richard

Richard

12/02/2007 16:18:00
Quote Anchor link
Geachte dames en heren,

File upload werkt niet bij op mijn systeem.
De global $_FILES['file'] blijft leeg.
Ik draa WAMP server en ik heb de
FILE_UPLOADS = on
en de TEMP dir settings en de MAX filesize settings al
gecontroleerd.

Maar het werkt nog niet!

Het script is als volgt:
echo '<form action="' . $_SERVER[PHP_SELF] . '" methode="post" enctype="multipart/form-data">' . "\n";
echo '<input type="file" name="file"><br>';
echo '<input type="submit" name="sbm_label" value="ok">';
echo '</form>' ."\n";

if(isset($_POST["sbm_label"]) && isset($_POST["file"])){
if ($_FILES["file"]["error"] > 0){
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else {
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}

Nu zou ik toch de waarden moeten krijgen?

Maar nu wat zie ik over het hoofd?
Een fout in de settings van PHP.ini
of een scriptfout???

Wie kan mij verlichten?????
 
PHP hulp

PHP hulp

20/11/2024 03:33:47
 
Joren de Wit

Joren de Wit

12/02/2007 16:25:00
Quote Anchor link
$_SERVER[PHP_SELF] moet zijn $_SERVER['PHP_SELF']. Nu krijgt je formulier dus een verkeerde action, waardoor het niet verstuurd zal worden...

Zet ook eens
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
?>

boven aan je script. Dan had je hier namelijk direct een foutmelding opgekregen...
 
Richard

Richard

12/02/2007 16:29:00
Quote Anchor link
Ok sorry schrijffout, maar hij doet het nog steeds niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
?>


geeft de volgende melding:
Undefined index: file in

hij vindt dus het index file niet!
maar hoe lossen we dit op?

P.S. Alvast bedankt voor je reactie
 
Richard

Richard

12/02/2007 16:33:00
Quote Anchor link
Ik lees ook ergens dat mijn
register_globals = on
moeten staan klopt dit
en hoe doe ik dit?
 
Joren de Wit

Joren de Wit

12/02/2007 16:39:00
Quote Anchor link
'methode="post"' moet zijn 'method="post"'.

En de variabele $_POST['file'] bestaat niet, dus daarop zal je if conditie falen en dus je statement niet uitgevoerd worden. Als je dat weg haalt werkt het gewoon. Overigens controleer je op die manier niet of er een formulier gepost is, dat doe je door de waarde van $_SERVER['REQUEST_METHOD'] te controleren...

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
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="post" enctype="multipart/form-data">' . "\n";
echo '<input type="file" name="file"><br>';
echo '<input type="submit" name="sbm_label" value="ok">';
echo '</form>' ."\n";

if($_SERVER['REQUEST_METHOD'] == 'POST'){
    if ($_FILES["file"]["error"] > 0){
        echo "Error: " . $_FILES["file"]["error"] . "<br />";
    }

    else {
        echo "Upload: " . $_FILES["file"]["name"] . "<br />";
        echo "Type: " . $_FILES["file"]["type"] . "<br />";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
        echo "Stored in: " . $_FILES["file"]["tmp_name"];
    }
}

?>


ps. Nee, register_globals moet je lekker uit laten staan! Je gebruikt de superglobals $_POST en $_FILES al, dus dat is geen probleem.
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Richard

Richard

12/02/2007 16:50:00
Quote Anchor link
Hij doet het, fantastisch bedankt!!!
Gewijzigd op 01/01/1970 01:00:00 door Richard
 



Overzicht Reageren

 
 

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.