Почему PHP не отвечает на мои переменные $ _GET? - PullRequest
1 голос
/ 05 января 2012

У меня есть следующий код в index.php (упрощенно):

<?php
  print_r($_GET);
  if ($_GET['f'] == "activate") {
    //do stuff
  }

  if ($_GET['f'] == "disable") {
    //do stuff
  }
?>

и далее вниз по странице, немного HTML:

<tr>
<td style='font-size: 0.9em;'>email@address.ac.uk</td>
<td style='font-size: 0.75em;'><span style="color: #00AF28;">Active</span></td><td style='font-size: 0.75em;'><a href="?f=disable&id=email@address.ac.uk">Disable</a></td>
</tr>

Две гиперссылки будут указывать браузеру на URL index.php?f=disable&id=email@address.ac.uk и index.php?f=disable&id=email@address.ac.uk соответственно.

При нажатии на гиперссылку (и направлении браузера на index.php?f=disable&id=email@address.ac.uk) результат print_r($_GET) будет:

Array ( [f] => disable [id] => email@address.ac.uk )

Тем не менее, оператор if:

if ($_GET['f'] == "disable") {
  //do stuff
}

Не выполняется, пока я не обновлю страницу или не нажму клавишу ввода в адресной строке.

Для этого я использую Chrome 16 на OSX, с PHP5.

Большое спасибо

1 Ответ

0 голосов
/ 06 января 2012

Попробуйте отключить кеш.Вы можете сделать это, отправив некоторые заголовки http в браузер.Вот пример из php.net

<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...