2014-03-24 4 views
-1

У меня есть скрипт входа php, который выполняется из верхней части моего html-файла. Есть ли способ НЕ выполнить этот PHP-код при его использовании в автономном режиме?Выполнять скрипт php только в автономном режиме

Цель: У меня есть webapp, который можно кэшировать на мобильном телефоне. Когда у пользователя нет сети, все равно можно открыть и использовать приложение. Но в автономном режиме он не может подключиться к пользовательской базе данных для аутентификации.

Итак:

  • Когда онлайн: Выполнить сценарий входа
  • Когда в автономном режиме: "проскочить" loginscript

я что-то подобное мышление:

<?php 

function getStatus($ip,$port){ 
    $socket = @fsockopen($ip, $port, $errorNo, $errorStr, 3); 
    if(!$socket) return "offline"; 
    else return "online"; 
} 

echo getStatus("sitename.com", "80"); 
?> 

Но вместо «echo online» он должен выполнить скрипт php, когда офлайн «ничего не делать» Но вы не можете использовать php-код «echo» в PHP-коде.

Любые идеи о том, как с этим справиться?

ответ

4

PHP выполнен на стороне сервера, а не на стороне клиента. Если веб-сайт кэширован, вы даже не можете связаться с веб-сервером.

Фактически, заставить сервер выполнять код PHP во время автономной работы невозможно, так как вы вообще не будете в контакте с сервером!

+0

Ans, когда скрипт также кэшируется? – bafplus

+0

@bafplus PHP-скрипт не будет кэшироваться, потому что он никогда не отправляется клиенту. То, что _is_ отправлено клиенту, это то, что сценарий PHP _returns_. Этот браузер может кэшировать. – kba

+0

Итак, что происходит, если браузер сталкивается с include: some.php-файлом в заголовке, когда он отключен? Он просто пропускает и обрабатывает страницу как обычно? (если да, то я уже сохранен ;-)) – bafplus

0

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

HTML, JS, CSS, изображения

и т.д., но Cookies не может быть отредактирована * (actully они могут быть с помощью JavaScript) * без подключения к сервер.

+0

Идея состоит в том, чтобы вообще не использовать сценарий входа в автономный режим ... Таким образом, аутентификация будет отсутствовать в автономном режиме (сайт кэшируется только после входа пользователя в систему и онлайн) – bafplus

+0

Если пользователь отключен, он не может подключиться к серверу и войти в систему. – user3452098

+0

Вот почему я не хочу, чтобы скрипт аутентификации загружался, когда пользователь отключен ... Затем просто отображается весь контент. Дело онлайн: Пользовательская аутентификация загружена, Случай в автономном режиме: аутентификация пользователя не используется вообще, и все содержимое видимо – bafplus

Смежные вопросы