Hoi,

Geheel in de categorie MyFirstPHP ben ik bezig met het uploaden van files.

De HTML-code :

<FORM NAME="FO" ACTION="ThePHP.php" METHOD="Post" ENCTYPE="multipart/form-data">

Selecteer het invoerbestand<BR>
<INPUT NAME="GimmeFile" TYPE="File">
<INPUT TYPE="Submit" VALUE="Import !">
</FORM>

vervolgens de PHP-code :

<?php

$ServerSided = "File_To_Process.txt";
$ClientSided = $_FILES['GimmeFile']['tmp_name'];

move_uploaded_file($ServerSided,$ClientSided);

?>

Er verschijnen geen errors.

Echter, ik kan het geuploade bestand niet vinden in de temp-directory.


Ik gebruik WAMP, standaard geinstalleerd.
A = versie 2.2.17
M = versie 5.5.8
P = versie 5.3.5

File Upload is toegestaan volgens PHP-configfile.

Heeft iemand de oplossing voor dit ongetwijfelde beginnersprobleem ?
Ik verwacht dat de HTML-code en PHP-code juist zijn, maar wellicht nog ergens een config-aanpassing.
Raadpleeg altijd eerst de handleiding alvorens een topic te starten!!!!!!!

http://www.php.net/move_upload_file

Let op:
Het is niet nodig om waarden van superglobals - $_FILES - te copieren naar een nieuwe variabele.

Het blind doorzetten van een geuploade file is ook niet verstandig, je dient toch wel het een en ander te controleren en te valideren.
Noppes Homeland,

Dank voor je reactie en tips.

php.net had ik reeds uitgeplozen (net als zo'n beetje heel google.) voordat ik de topic aanmaakte. Genoeg codes gecopypaste, maar niets leidt tot het gewenst resultaat. Echter, nergens is te vinden waarom de geuploade file niet te vinden is aan de serverkant. Niet op de standaardfolder, niet op de plek na de move.

Heb je wellicht ook een oplossing ??
Ik heb zelf een upload scriptje geschreven, maar dat is voor meerdere bestanden, echter ik doe ze zo verplaatsen :

$map = $_SERVER['DOCUMENT_ROOT']."/uploads/"; // map waar de uploads moeten 


move_uploaded_file($_FILES['GimmeFile']['tmp_name'][$key], $map . $filename); 

dus eerst geef je aan om welk Temp bestand het gaat en achter de komma geef je aan waar die hem heen verplaatsen moet. Jij wil hem naar $clientsided verplaatsen, maar dit gaat niet omdat $clientsided geen doelmap en bestandsnaam heeft..

Kan zijn dat ik het mis heb, ben nog maar een beginner met PHP maar ik denk dat hier de fout in zit!

Wat je ook kan proberen is even
error_reporting(1);

bovenaan je bestand zetten, kijken of je dan wel een foutmelding krijgt.
Hoi Patrick,

Altijd als mensen meedenken, samen komen we er wel uit, nietwaar ?

Het omdraaien van de parameters in de php-upload-function gaf de oplossing.
Zelf verwachtte ik het bestand in elk geval te kunnen terug vinden in de standaardtemp-folder. Zie tmp_name.

array
'GimmeFile' =>
array
'name' => string 'LocalFile.txt' (length=9)
'type' => string 'text/plain' (length=10)
'tmp_name' => string 'D:\wamp\tmp\php2E.tmp' (length=21)
'error' => int 0
'size' => int 85

Hoe dan ook, het bestand heb ik nu serversided, vandaar zie ik wel verder !

Superbedankt !

grtz

Reageren