Izzard
Новичок
Бракодабра при скачивании файла.
Народ, помогите разобраться. Долго искал но подобных ситуаций не нашел. Возможно, вопрос покажется ламерским, но час ночи, сами понимаете...
Есть скрипт (целиком страница с html) для скачивания файлов с сайта:
При скачивании первого файла все нормально, но если потом начать сразу скачивать второй, то грузится часть страницы и выводится бракодабра вместо файла, который должен скачаться. Но если после скачивания первого страницу обновить, а затем начать скачивать второй, то все ok.
Раньше было вместо блока хедеров
и все работало как часы, кроме того момента, когда скачивались .rar(ы) - опять таки бракодабра была. Потом переделал под это, что выше, и опять проблема вкупе с новой.
Подскажите, пожалуйста, что можно сделать?
Народ, помогите разобраться. Долго искал но подобных ситуаций не нашел. Возможно, вопрос покажется ламерским, но час ночи, сами понимаете...
Есть скрипт (целиком страница с html) для скачивания файлов с сайта:
PHP:
if (!empty($_GET['file_id']))
{
...// здесь некий код и sql для получения имени файла в $dd['file_name'].
if (!empty($dd['file_name']))
{
$file_name = "../downloads/".$dd['file_name'];
$file_size = filesize ($file_name);
header("Content-Length: $file_size");
header('Content-Disposition: attachment; filename="'.basename($file_name).'"');
readfile($file_name);
}
else
{ header("Location: /этот_файл.php"); }
}
<html>
...
<a href='этот_файл.php?file_id=1'>Скачать файл 1</a><br>
<a href='этот_файл.php?file_id=2'>Скачать файл 2</a>
...
</html>
Раньше было вместо блока хедеров
PHP:
header("Location: /downloads/{$dd['file_name']}");
Подскажите, пожалуйста, что можно сделать?