Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не обновляются данные на странице результатов, ... в IE7. В Firefox - все ОК! 
V
    Опции темы
And_
Дата 16.10.2008, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.7.2007

Репутация: нет
Всего: нет



Господа!
Столкнулся со следующей ситуацией. Есть страница с формой, через которую наполняется БД. Также есть ссылка на страницу результатов.
Если ввести несколько записей в БД и перейти на страницу результатов, то введенные данные не отображаются. Появляются они только после обновления страницы.
Как сделать что бы при переходе на страницу результатов отображался актуальный набор данных?

P.S. Все вышесказанное относится к IE7. 
В Firefox все впорядке.


Форма
Код

<?php
if (isset($_POST['info']))
{
     mysql_connect('localhost','root','11111111');
     mysql_select_db('fortest');
     $data=$_POST['info'];
     $query="insert into ttable (id, data) values(null,'$data')";
     mysql_query($query);
     echo mysql_error();
}


?>

<html>
<head>
<title> test    </title>
</head>
<body>
    <form action="./form.php" method="POST">
    <input type="text" name="info" title="Введите число" onChange="check_it();" onkeypress="if ((event.keyCode < 48) || (event.keyCode > 57))
  event.returnValue = false;"> <br>
    <input type="submit" name="submit">
    </form>
<a href="./result.php">Посмотреть результат >>> </a>
</body>
</html>
 

Страница результатов
Код

<?php
    mysql_connect('localhost','root','11111111');
    mysql_select_db('fortest');
    $query="select * from ttable";
    $result=mysql_query($query);
    
       echo ('<table border=\"1\">');
     while($data=mysql_fetch_row($result))
            {
            echo ("<tr>");
            echo ('<td>'.$data[0].'</td>'); 
            echo ('<td>'.$data[1].'</td>'); 
            echo ('</tr>');
            } 
      echo '</table>';
?>
<a href="./form.php"><<< К форме ввода </a>

PM MAIL   Вверх
unicross
Дата 16.10.2008, 20:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 422
Регистрация: 15.6.2008

Репутация: 21
Всего: 53



And_, вставьте в начало страницы с результатами эти строки:


Код

Header("Expires: Sun, 27 May 2007 01:00:00 GMT");
Header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
Header("Cache-Control: no-store, no-cache, must-revalidate");
Header("Pragma: no-cache");


And_, очень странный у вас код. Нет проверки подключения... Потенциальная ошибка в будущем.
PM MAIL WWW   Вверх
And_
Дата 17.10.2008, 06:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.7.2007

Репутация: нет
Всего: нет



Большое спасибо! Ваш совет решил проблему smile
Код писал в спешке, что бы продемонстрировать вопрос, который меня интересовал.

unicross, не могли бы Вы вкратце пояснить назначение этих заголовков?
PM MAIL   Вверх
MoLeX
Дата 17.10.2008, 07:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(And_ @  17.10.2008,  06:46 Найти цитируемый пост)
unicross, не могли бы Вы вкратце пояснить назначение этих заголовков? 

запрет кэширования.

Цитата(Запрет кэширования посредством PHP)

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

Запретить кэшировать документы браузером и Proxy-серверами можно при помощи средств языка PHP, а именно функции Header().

Для этого надо использовать в начале сценария следующие команды: 
Код

Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); //Дата в прошлом 
Header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
Header("Pragma: no-cache"); // HTTP/1.1 
Header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");


Для полного запрета кэширования приходиться всегда посылать 4 указанных заголовка, и ни один пропустить нельзя - в противном случае не сработает либо браузер, либо Proxy-сервер. 


Добавлено через 19 секунд


And_, тему отметь решеной


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
And_
Дата 17.10.2008, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.7.2007

Репутация: нет
Всего: нет



ОК
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0482 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.