Sikkerhedsproblemer og udfaset udvidelse til side, alt hvad du skal gøre er at indsætte filnavnet i databasen. For at gøre det skal du tilføje et "filnavn"-felt til din database og derefter justere din indsættelsesforespørgsel i overensstemmelse hermed:
INSERT INTO products (name, description, price_low, price_high, filename)
VALUES (:name, :desc, :price_low, :price_high, :filename)
Også din $uploaddir
variabel er tom, filerne bliver sandsynligvis ikke engang gemt nogen steder i øjeblikket. For at flytte dine filer korrekt, prøv noget som dette:
$uploaddir = '/path/where/you/can/save/';
$rawFilename = $_FILES['userfile']['name'];
$extension = pathinfo($rawFilename, PATHINFO_EXTENSION);
$uploadfile = $uploaddir . md5($rawFilename) . '.' . $extension;
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Upload failed";
}
Dette script antager, at du har tillid til det uploadede indhold, og md5-funktionen er bare en hurtig og nem måde at "sanere" (hvis jeg kan kalde det det) filens navn på.