@IValerieI

Как вывести ответы на анкету каждого пользователя на отдельной странице (ответы читаются из файла)?

У меня есть html-страница, в ней размещена анкета между тегами . По методу POST происходит отправка данных из формы в php файл, который сохраняет ответы на анкету в файл txt. Все анкеты записываются в один файл. Далее я читаю из файла результаты анкеты и вывожу их на страницу (страница php). Но выводятся все данные из файла.

Мне нужно создать страницу со ссылками на каждую анкету. При переходе по ссылке будут отображаться результаты только той анкеты, для которой создана эта ссылка.

Update
У меня сейчас есть html страница с формой. Пример вопроса из анкеты:
61a4d5f61c88d734963486.png

Тег выглядит так:
61a4d619c42a8429351273.png

Затем в файле file.php есть условие, которое возвращает нужный ответ в зависимости от значения переданного через форму:
61a4d62ca82d0842542233.png

Далее в этом же файле file.php я записываю вопрос и ответ на него в файл file.txt:
61a4d644debdb359461600.png

И на странице results.php происходит вывод анкет, записанных в файл file.txt (всех сразу):
61a4d6580db03500863209.png

Мне нужно создать страницу со ссылками на каждый отдельный результат анкеты. При переходе по ссылке будет отображаться нужный результат.

У меня еще мало знаний по php, поэтому не получается так сразу реализовать варианты, которые уже предложили в ответах на вопрос. Мне бы очень помог ответ с примером кода для моей задачи и объяснением или со ссылкой на источник, где я могу об этом почитать и все сделать.
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
@jsnk
Программист
При записи ответов добавь в начале номер, в конце разделитель для массива.
При запросе ответов в параметре задавай номер. По номеру из массива ответов (из файла) получай нужный.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ksnk
Сохраняй результаты не в txt файл, а в php. Что нибудь такое, при сохранении
$results_file='results.php';
$result=include_once($results_file);
$result[$current_user_id]=['post'=>$_POST, 'time'=>time()];
file_put_contents($results_file, '<'."?php\nreturn ".var_export($result,true).';')

Проверку параметров и навороты - по вкусу
При выводе включаем то же файл и выводит заполненную нужным юзером анкету.

Ну и начальный results.php
<?php
return [];
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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