@kyurem_bog

PHP Скачивается битый файл с сервера. В чем проблема?

У меня в бд прописан путь к файлу на сервере. Я вывожу в таблицу на сайте данный, и при этом возле каждой строки есть кнопка скачать. Файл скачивается но он битый. При том что я скачиваю чуть по разному, через форму(Все работает) и через get(битый)
if (isset($_GET['dw_id'])) {


   $result = $mysqli->query("SELECT path FROM `stud` where `id_stud` = {$_GET['dw_id']}");
    while ($row = mysqli_fetch_assoc($result)) {
        $file_name='libs/'.$row['path'];
        header("Content-Length: ".filesize($file_name));
        header("Content-Disposition: attachment; filename=".$file_name);
        header("Content-Type: application/x-force-download; name=\"".$file_name."\"");
        readfile($file_name);
    }
}

<?php
if (isset($_POST['fiostud']) && isset($_POST['vidrab'])){
	$fiostud= $_POST['fiostud'];
	$vidrab = $_POST['vidrab'];


   $result = $mysqli->query("SELECT path FROM `stud` where vid_rab='$vidrab' and fio_stud='$fiostud'");
    while ($row = mysqli_fetch_assoc($result)) {
        $file_name=$row['path'];
        header("Content-Length: ".filesize($file_name));
        header("Content-Disposition: attachment; filename=".$file_name);
        header("Content-Type: application/x-force-download; name=\"".$file_name."\"");
        readfile($file_name);
    }
}
   ?>
  • Вопрос задан
  • 298 просмотров
Пригласить эксперта
Ответы на вопрос 1
irishmann
@irishmann
Научись пользоваться дебаггером
Скачиваете 1 файл? Зачем в цикле выводите на скачивание? Похоже через GET пытается выдать на скачивание сразу несколько файлов, а при POST только один.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы