@sreug

Как выводить предупреждения в php?

мне нужно при определённом условии вывести предупреждение пользователю в виде чексбокса,например какие поля оставить в выгрузке данных,как это реализовать в скрипте?
  • Вопрос задан
  • 182 просмотра
Пригласить эксперта
Ответы на вопрос 2
Adamos
@Adamos
PHP не интерактивен, его нельзя прервать, выдав пользователю запрос и продолжить после ответа.
В РНР вы можете только проанализировать данные и выдать ответ - все прошло или остались вопросы.
Остальное делается в браузере, в JS: на форму, куда прикрепляется файл, вешается обработчик, который отправляет его по AJAX в PHP и разбирает ответ. Если в ответе есть вопросы, они выдаются пользователю и данные отправляются снова по тому же AJAX, но уже с ответами пользователя, определяющими поведение РНР при обработке файла.
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
В используемом виде (когда процесс выполняется на сервере), создать такой функционал достаточно сложно. Как верно заметил Adamos, чаще всего и проще всего реализовать весь процесс обработки без интерактивности, так как напрямую сервер, "по своему желанию", не может отвечать клиенту, а отвечает только в ответ на запрос, после чего завершает работу, за исключением некоторых случаев, которые тут не совсем применимы. По этому, скорее всего, либо вы не верно поняли задание, либо сам поставивший задачу слабо представляет принцип работы веб приложений.

Как варианты реализации:
1) Просто перед обработкой выбираем галочку "убрать все дубликаты", простое и рабочее решение, вы заранее определяете алгоритм обработки и больше ничего не надо делать.
2) На сервере проходимся по файлу, находим все дубликаты и записываем массив позиций, выдаем человеку этот массив в виде списка галочек, после отправки - удаляем помеченные позиции. Реализация в разы сложнее, но полностью удовлетворяет условию.
3) Вариант с извращениями - на сервере перебираем файл, при нахождении дубля отправляем клиенту галочку, а в сессию пишем позицию с которой продолжать и завершаем скрипт. По получении запроса с галочкой - продолжаем с той же позиции. Криво, но абсолютно повторяет функционал описанный вами.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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