Используйте функцию php, если Javascript не включен - PullRequest
1 голос
/ 16 января 2011

У меня есть сайт, который будет собирать новые данные при первом посещении страницы. Я хотел бы использовать AJAX для этого, чтобы я мог представить пользователю по крайней мере некоторые loading.gifs во время чистки, но это только если Javascript включен.
Мой сайт использует механизм шаблонов PHP, поэтому я решил добавить функцию очистки в теги <noscript> в шаблон HTML. Так как это произойдет после всего кода PHP, мне придется перезагрузить страницу, чтобы я мог рендерить / анализировать очищенные данные с помощью PHP.

Этот метод кажется немного небрежным, мне было интересно, есть ли эффективный способ сделать это.

Ответы [ 2 ]

1 голос
/ 16 января 2011

Тег <noscript> будет интерпретироваться клиентом (веб-браузером) только после отправки страницы, что означает, что уже слишком поздно запускать функцию php.Я бы, вероятно, отказался от двойного подхода на вашем месте, но могут быть и другие (хакерские) способы сделать это ...

Может быть, вы могли бы поместить iframe в тег <noscript>, чейsrc - это отдельный сценарий очистки.
Или вы можете проверить возможность js на целевой странице, а затем отправить людей на страницу, созданную для их настройки.

Возможные полезные ссылки:
Проверьте, включен ли JavaScript с PHP
Могу ли я сообщить PHP, что у пользователя не включен JavaScript?

1 голос
/ 16 января 2011

Есть ли причина, по которой вам нужно делать это с помощью Javascript?Почему бы просто не сделать это с PHP, используя cURL для получения контента и другие расширения PHP, такие как SimpleXML, для получения контента?Вы даже можете кэшировать очищенное содержимое в таблице базы данных в течение заданного промежутка времени, чтобы каждая загрузка страницы не заставляла PHP выполнять очистку заново.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...