Запишите в выходной буфер PHP, а затем загрузите CSV из буфера.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Запишите в выходной буфер PHP, а затем загрузите CSV из буфера.

Сообщение Anonymous »

Мне нужно записать CSV-файл в выходной буфер PHP, а затем загрузить этот файл на клиентский компьютер после завершения записи. (Я хотел просто написать его на сервере и загрузить, и это работало, но оказалось, что у меня не будет доступа для записи на рабочих серверах).

У меня есть следующий PHP-скрипт:

Код: Выделить всё

$basic_info = fopen("php://output", 'w');
$basic_header = array(HEADER_ITEMS_IN_HERE);

@fputcsv($basic_info, $basic_header);

while($user_row = $get_users_stmt->fetch(PDO::FETCH_ASSOC)) {
@fputcsv($basic_info, $user_row);
}

@fclose($basic_info);

header('Content-Description: File Transfer');
header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=test.csv');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize("php://output"));
ob_clean();
flush();
readfile("php://output");
Я не знаю, что делать. CSV-файл загружается, но ничего не отображает. Я предполагаю, что это как-то связано с порядком моих команд ob_clean() иlush(), но я не уверен, как лучше всего упорядочить эти вещи.

Любая помощь приветствуется.


Подробнее здесь: https://stackoverflow.com/questions/157 ... rom-buffer
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»