@countZer0

Как выгрузить заказаы в .csv?

Доброго времени суток !

Помогите пожалуйста со скриптом.

В таблице должны собираться данные:
• Дата сбора заказов
• Адрес Стационара
• ID пациента
• ФИО пациента
• Номер телефона
• Номер диеты
• Завтрак – блюда
• Обед – блюда
• Ужин – блюда

файл должен за указанную дату сгенерить файл цсв с заказами
данных которых нет, сейчас, к примеру диета, ставим -

Тоесть например, делаем скрипт:
/getxls.php?date=05.03.2020

который отбирает все нужные данные и записывает в файл.

Теперь по порядку, есть вот такой вот запрос, который возвращает сами заказы и время:

orderClick() {
          const isAllCategoriesDone = this.categories.every((category) => {
            return this.isCategoryDone(category);
          });
          const url = 'http://emcq.zapusq.ru/catalog/createOrder.php';
          const payload = { data: JSON.stringify(this.getAllSelectedProducts) };
          axios.post(url, payload)
          .then((response) => {
            console.log(response.data);
            console.log(response.status);
            console.log(response.statusText);
            console.log(response.headers);
            console.log(response.config);
          }, (error) => {
            console.log(error);
          });
          <?/*
          if (isAllCategoriesDone) {
            this.openModal('done');
          } else {
            this.openModal('warning');
          }
          */?>
        }


Пробовал вот такой вариант:

$input_text = $_POST; 
$fp = fopen('test.txt', 'a'); 
fwrite($fp, $input_text);
fclose($fp);


Скрипт создает пустой файл.
  • Вопрос задан
  • 58 просмотров
Пригласить эксперта
Ответы на вопрос 1
Zoominger
@Zoominger
System Engineer
Пробовал вот такой вариант:

Скрипт создает пустой файл.

Потому что вам надо сначала распарсить JSON, загоняя нужные вам данные о каждом пациенте в массив строк через запятую, а затем записать этот массив в файл построчно, начиная каждый раз с новой строки. Это и будет csv-файл.

Задача настолько примитивна, что год гуглится на раз-два.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы