Problemy z bezpieczeństwem i przestarzałe rozszerzenie na bok, wszystko, co musisz zrobić, to wstawić nazwę pliku do bazy danych. Aby to zrobić, dodaj pole „nazwa pliku” do bazy danych, a następnie odpowiednio dostosuj zapytanie wstawiania:
INSERT INTO products (name, description, price_low, price_high, filename)
VALUES (:name, :desc, :price_low, :price_high, :filename)
Również Twój $uploaddir
zmienna jest pusta, prawdopodobnie w tej chwili pliki nie są nawet nigdzie zapisywane. Aby prawidłowo przenieść pliki, wypróbuj coś takiego:
$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";
}
Ten skrypt zakłada, że ufasz przesłanej treści, a funkcja md5 jest po prostu szybkim i łatwym sposobem na „oczyszczenie” (jeśli mogę to tak nazwać) nazwy pliku.