Das kommt in deine Datei wo du den Upload der datei vollziehst. Wie diese datei bei dir heißt weiß ich nicht.
Und ja $_FILES ist ein array.
Lass ihn dir einfach Printen: print_r($_FILES)
und $_FILES['inputfeldname']['name'] kannst du nicht einfach so übernehmen. wo inputfeldname steht sollte auch der name von deinem inputfeld rein.
Aber wenn ich auf den Downloadlink klicke müsste ich ja zu ungefähr so einer seite kommen: domain.org/upload/Dateiname.jpg
Jein. Du klickst auf deine downloaddatei, die dir den header so abändert, dass der Link im hintergrund auch so aussieht. Für dich ist aber nur domain.org/download.php?dname=dateiname.jpg sichtbar.
// Wenn das hier: "?dname=" der Datename ist.warum ist denn danach nochmal die Variable von dem Dateinamen ?
Der Dateiname ist $dateiname. "dname" ist nur die Definition für php damit man via GET wieder auf den Wert der hinter dname steht zurückgreifen kann