Waarom werkt het volgende niet.

$target_dir = "zoeken/uploads/";
$file = "test.txt"
move_uploaded_file($file, $target_dir);


Ik wil gewoon een file oploaden zonder een keuze te moeten maken.
Wellicht omdat er een ; ontbreekt aan het eind van de regel?

$file = "test.txt"
Heb je al eens geprobeerd met het volledige path? (hieronder heb ik even iets fictiefs ingvuld)

$target_dir = "/home/var/www/http/bla/bla/zoeken/uploads/";
$file = "/home/var/www/http/bla/bla/test.txt";
Ik krijg in de php geen foutmelding maar toch word de file niet geupload.
misschien omdat $target_dir al bestaat en een directory is?

Misschien een bestandsnaam toevoegen

<?php
$target_dir = "zoeken/uploads/";
$file = "test.txt"
move_uploaded_file('/tmp....', $target_dir . $file);
?>

En je geuploade bestand heeft een tijdelijk naam, en staat vaak in /tmp.
Die betreffende naam staat in je $_FILES-array.
Ik ben bezig op localhost in /zoeken

[size=xsmall]Toevoeging op 17/02/2022 17:45:54:[/size]

ivo

Uw voorstel werkt ook niet.
"This function checks to ensure that the file designated by from is a valid upload file (meaning that it was uploaded via PHP's HTTP POST upload mechanism). If the file is valid, it will be moved to the filename given by to."

Je moet de file dus wel uploaden.
Laten we het eens anders zeggen.
Je kent de filename
Je kent de directory waarde upload moet komen.
Hoe moet het dan gaan in de praktijk want dit werkt niet
move_uploaded_file($file, $target_dir);
move_uploaded_file('/tmp/denaamdiejijkent', '/een/directory/met/filename.xyz');

En de naam die jij kent moet je dus uit je $_FILES array vissen, aangezien die altijd uniek is.

Reageren