| Autor | Zpráva | ||
|---|---|---|---|
| drvaca Profil |
#1 · Zasláno: 11. 2. 2010, 19:40:11
Dobrý večer,
mám menší problém s jedním souborem. Soubor se jmenuje download.php , a toto je jeho kód: <?
$soubor = $_GET["soubor"];
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"$soubor\"");
readfile ($soubor);
?>Takže asi jasné, že download.php?soubor=1.mp3 nabídne ke stažení soubor 1.mp3 Problém však nastane když chci dát ke stažení něco z nějaké složky, například download.php?soubor=mp3/2010/1.mp3 mi nabídne ke stažení neexistující soubor mp3_2010_1.mp3 . Dokáže mi někdo poradit co s tím? Byl bych vděčný přímo za kód který by fungoval tak jak má. Děkuji |
||
| saphire Profil |
#2 · Zasláno: 11. 2. 2010, 19:44:28 · Upravil/a: saphire
drvaca:
<?
$soubor = $_GET["soubor"];
if(file_exist($soubor)){
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"$soubor\"");
readfile ($soubor);
}else{
echo "Pozadovany soubor neexistuje";
}
?>
kde f-ce file_exist($soubor) ověřuje existenci souboru viz php.net |
||
| Alphard Profil |
#3 · Zasláno: 11. 2. 2010, 19:50:24
Do URL byste měl dodávat řetězec zakódovaný přes urlencode().
|
||
| drvaca Profil |
#4 · Zasláno: 11. 2. 2010, 19:51:05
Děkuji vám oběma :)
|
||
|
Časová prodleva: 17 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0