Jump to content
  • 0

Не обновляется содержимое страницы при записи в БД.


Kompilator
 Share

Question

Здравствуйте.

Вчера днём нарушилась работа моего сайта - ссылка.

Два дня назад всё работало корректно, но с какого-то момента при добавлении нового комментария, он перестал отображаться пока не обновить страницу вручную (F5).

Т.е. при переходе от страницы к странице (обзоры разных устройств), я вижу старые комментарии (нет вновь добавленных, исправленных, присутствуют уже удалённые), хотя в БД изменения произошли (вижу это в PHP-MyAdmin).

Иногда не получается добавить новый комментарий в БД, но реже.

При добавлении комментария, данные передаются другой странице по ГЕТ. В этой странице происходит добавление/изменение записи в БД и возврат в вызывающую страницу при помощи:

<meta http-equiv="refresh" content="0; url='.$path.'">

Данная строка выводится в HTML файл при помощи echo, т.е. HTML код страницы содержит всего одну строку - <meta http-equiv="refresh" content="0; url='.$path.'">

Может быть из-за этого ? такой переход некорректен ? но ведь еще позавчера всё работало.

Хостинг Рег.ру, они говорят, что никаких изменений не происходило на их сервисе.

Я удалил с сервера весь сайт и залил из бекапа (месячной давности) со своего компа, проблема не пропала, вернул обратно, т.к. были некоторые изменения.

Для проверки глюка нужно зайти на сайт , залогиниться, логин: asdf, пароль: asdf и попробовать оставить комментарий внизу страницы.

Интересна особенность, то что с другого компьютера бывает всё работает как надо, особенно в браузере ИЕ.

С моих же компьютеров глючит и с телефона глючит.

 

Помогите пожалуйста решить проблему.

Edited by Kompilator
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0
13 минуты назад, Switch74 сказал:

попробуйте производить редирект через header в php после записи в БД

Спасибо, это уже вечером.

 

Сейчас заметил, что в PHP-MyAdmin тоже отображались удалённые строки. Я переходил в другую таблицу, возвращался в текущую, строки были (хотя их удалил). Когда обновил PHP-MyAdmin через F5, строки перестали отображаться.

 

Это какой-то бред.

 

Link to comment
Share on other sites

  • 0

Вот сейчас снова.

Появилось 2 новых комментария от пользователей, а в PHP-MyAdmin их не было видно.

Обновил по F5, только тогда появились.

 

Может ракое быть, что Рег.ру не договаривают чего-то и это ихний глюк ?

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

Link to comment
Share on other sites

  • 0

Создал PHP файл запрещающий кеширование:

<?php
  header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
  header("Last-Modified: " . gmdate("D, d M Y H:i:s")." GMT");
  header("Cache-Control: no-cache, must-revalidate");
  header("Cache-Control: post-check=0,pre-check=0", false);
  header("Cache-Control: max-age=0", false);
  header("Pragma: no-cache");
 ?>

, и инклюдом вставляю сижу теперь в начало каждой страницы, коих на моём сайте миллион.

Проблема решилась, теперь всё работает как надо. Интересно то, как до этого сайт прекрасно работал, как могло такое произойти ?

Хостинг говорит, что никакие настройки не менял, почему тогда я начиная с позавчера получал страницу из кеша пока не обновлял по F5 ?

Два года сайт работал, комментарии всегда отображались корректно и тут на тебе, в одночасье рухнуло (((.

Может кто-нибудь объяснить, из-за чего такое могло произойти ?

Edited by Kompilator
Link to comment
Share on other sites

  • 0

в хроме что то недавно изменилось. теперь серьезно кэширует. во многих случаях ctrl+r не помогает.  приходится сбрасывать аппаратно

попробуйте через htaccess запрещать

Link to comment
Share on other sites

  • 0
7 часов назад, Николя223 сказал:

в хроме что то недавно изменилось. теперь серьезно кэширует. во многих случаях ctrl+r не помогает.  приходится сбрасывать аппаратно

попробуйте через htaccess запрещать

Так уже решил проблему.

Перед Вашим постом рассказал как.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy