Ik heb nu een download script (zie hier onder) maar ik wil als je een bestand download maakt niet uit welk bestand dat als dat download scherm komt dat er dan al een filenaam staat ingevuld namelijk de inhoud van $_GET['name'], maar ik weet niet hoe ik dat moet doen. Kan iemand mij helpen?

<?php
if(file_exists("../../../f/".$_GET['file']))
{
header('Content-type: Application/octet-stream');
header('Content-Disposition: attachment; filename='.$_GET['file']);
readfile("../../../f/".$_GET['file']);
}
else
{
echo 'Bestand bestaat niet!';
}
?>



Met vriendelijke groet, Robin van der Vliet.
wat is het probleem?
ja, dat script wat je hebt zou toch moeten werken?
Regel 5 van de code zegt dat het bestand $_GET['file'] moet heten en niet $_GET['name'].
Maar waar word dan gedefinieerd wat de echte bestandsnaam is?
Ook in de GET-vars. Je krijgt dan zoiets:
bestand.php?file=echtebestandsnaam.pdf&name=rapport.pdf
Dus als ik het goed begrijp...

// Dit is voor de filename.
header('Content-Disposition: attachment; filename='.$_GET['file']);
// En dit is voor welk bestand.
readfile("../../../f/".$_GET['file']);


Klopt dat?
Nee.
<?php
header('Content-Disposition: attachment; filename='.$_GET['name']);
readfile("../../../f/".$_GET['file']);
?>
Elwin Fratsloos op 20/05/2010 20:48:18

Nee.
<?php
header('Content-Disposition: attachment; filename='.$_GET['name']);
readfile("../../../f/".$_GET['file']);
?>


Dat bedoelde ik. :P
Let wel effe op dat nu dus elk bestand van je server gedownload kan worden.

Reageren