Обновить страницу с помощью PHP
Как я могу периодически обновлять страницу с помощью PHP? Если я не могу сделать это с помощью PHP, каков наилучший рекомендуемый сценарий?
мы говорим о синхронизации (вы сталкиваетесь с ситуацией, когда вы хотите обновить во время анализа вашего php-скрипта) refrehs (мета-обновление будет работать нормально) или об асинхронном непрерывном обновлении страницы (больше похоже на javascript / ajax)?
13 ответов
Вы можете сделать это с помощью PHP:
Он обновляет текущую страницу, и если вам нужно перенаправить ее на другую страницу, используйте следующую команду:
header("Refresh:0; url=page2.php");
Обновить не является официальным заголовком, но поддерживается многими браузерами, начиная с Netscape Navigator. Это означает, что вам придется проверить, чтобы убедиться, что ваша аудитория использует поддерживающие браузеры.
Использование 0 будет постоянно забивать ваш сервер и / или локальный кеш, особенно если у вас есть изображения на странице. Если вам нужно только обновить информацию на экране, например, цены на акции, но не использовать эту информацию в форме или из javascript, возможно, используйте тег iframe, указывающий на страницу только с обновляемой информацией, и с задержкой, соответствующей тому, как актуальная информация должна быть.
В PHP вы можете использовать:
$page = $_SERVER['PHP_SELF']; $sec = "10"; header("Refresh: $sec; url=$page");
Или просто используйте JavaScript window.location.reload() .
Заголовок Yazana (‘Location:’) используется для перенаправления пользователя на любой URL, вы не можете обновить страницу, используя его.
Pratik. Вы неправы. вы действительно можете использовать заголовок («refresh:»), чтобы обновить страницу
Вы можете сделать и то и другое, хотя я предпочитаю не ждать времени с: header(«Location: «.$_SERVER[‘PHP_SELF’]);
Примечание об этом решении: если на вашем сайте реализована какая-то приятная маршрутизация или перезапись URL (т. $_SERVER[‘PHP_SELF’] Практически любая инфраструктура по умолчанию), вы можете обнаружить, что $_SERVER[‘PHP_SELF’] дает вам истинный путь к сценарию, а не фактический URL, который вы $_SERVER[‘PHP_SELF’] увидеть в вашем браузере. В этом случае попробуйте использовать $_SERVER[‘REQUEST_URI’] .
что просто возможно с заголовком() в php
header('Refresh: 1; url=index.php');
Вы можете периодически обновлять страницу с помощью PHP:
Это обновит страницу каждые три секунды.
Создайте инструкцию if . Если требуется обновление, echo:
Как указано в @warren, приведенный выше код немедленно обновит страницу. Вы можете установить время с помощью content vall
да, я комментирую этот ответ: всегда есть возможности для улучшения. И вы правы, вы можете установить content равным любому значению в секундах — мой комментарий все же стоит отметить, что обновление 0 секунд, вероятно, не то, что вы собираетесь 🙂
@Mathlight и кто-либо еще жалуется на задержку комментариев. Просто потому, что вы, возможно, пошли дальше, будущий читатель, возможно, только что столкнулся с проблемой, и ваш ответ / комментарий, наряду с любыми задержанными, оспаривающими его, все же может иметь отношение к ним.
@Mathlight Я не уверен, почему люди думают, что только потому, что пост старый, не может быть никакого смысла комментировать его. Вы должны избавиться от этого мышления.
Я нашел 2 способа обновления содержимого PHP:
1. Использование HTML META:
echo(""); //Refresh by HTTP META
2. Использование PHP REFRESH RATE:
$delay=0; //Where 0 is an example of time Delay you can use 5 for 5 seconds for example ! header("Refresh: $delay;");
//Refresh by HTTP META => // Refresh by HTML META также это выглядит как ответ, скопированный сверху.
Эхо метатег: URL-адрес — это тот, где страница должна быть перенаправлена после обновления.
Вы не можете сделать это в PHP. После загрузки страницы PHP умирает и выходит из-под контроля.
У вас есть несколько вариантов:
Я думаю, что обновить метатег является самым простым и удобным.
Неправильно, вы можете периодически обновлять страницу, используя PHP, если вы используете функцию заголовка PHP следующим образом: header («refresh: 3;»);
Вы можете обновить страницу в PHP, используя заголовок. Кроме того, использование META REFRESH НЕ идеально для SEO.
Я думаю, что это неправильно, всегда есть способ: я думаю, что если он захочет обновить страницу с помощью php, то через некоторое время может отправить запрос ajax на страницу с кодом обновления php. но вообще твой ответ хорош
Как только страница загружена, PHP умирает и выходит из-под контроля. Все остальные методы являются хитростями на стороне клиента, чтобы снова подключиться к серверу и перезагрузить страницу
Это совершенно неправильно! Всеми возможными способами. Это может быть сделано с помощью PHP, заголовков (обновление) и с помощью инициируемых перенаправлений. Кажется, что все остальные ответы лучше.
header(‘Location: .’); похоже, обновляет страницу в Chrome, Firefox, Edge и IE 11.
Как и следует (один раз): php.net/manual/en/function.header.php : «Второй особый случай — заголовок« Location: ». Он не только отправляет этот заголовок обратно в браузер, но и возвращает REDIRECT (302) код состояния для браузера, если код состояния 201 или 3xx уже не установлен. «
Но это не то, о чем просил ОП. Я все еще проголосовал за это, потому что понял это только потом, извините. Это скоро Рождество! 🙂
Вы можете обновить с помощью JavaScript. Вместо полного обновления страницы вы можете обновить содержимое в div. Затем с помощью JavaScript вы можете обновить только этот единственный div, и он работает быстрее, чем полное обновление страницы.
PHP — это серверный язык, поэтому вы не можете обновлять страницу с помощью PHP, но JavaScript — лучший вариант для обновления страница:
Хахахах хорошо, тогда, как вы хотите. Проверьте это => ( неправильный домен.epl.fanxt.com ), он не указал, что обновит страницу «после» ее загрузки. Если решение об обновлении было принято во время выполнения кода php, то php, безусловно, может обновиться и может выбирать, через сколько секунд обновляться.
@Ahmad Ахмад, вы не можете рассматривать как особенность PHP, это особенность HTML. Таким образом, вы делаете это, устанавливая заголовок ответа html. И именно поэтому я сказал, что вы не можете сделать это с помощью PHP. Другое дело, вы не можете обновить страницу после загрузки / при необходимости. да, вы можете установить его на несколько секунд и т. д., как вы ответили.
о технических деталях Думаете, можно использовать заголовок для обновления определенного изображения? Это если вы потоковое изображение через php грубый.
Ах да, нашел это. Сначала я попробовал обычный тег изображения. Неудачно. Но затем я заменил тег изображения на тег iframe и вуаля. Изображение обновляется автоматически. Это очень поможет с некоторыми из моих изображений состояния страницы 🙂 Для тех, кому интересно, я передаю изображение через php вместе с заголовком обновления, устанавливая файл php в качестве источника iframe.
Опять же, вы не думаете, что заголовок «обновить» является функцией HTML? PHP просто передает изображение (в зависимости от статуса пользователя или чего-либо еще), оно не обновляет страницу, HTML-заголовок (обновление) сообщает браузеру, что он должен обновить содержимое через x раз.
Технически, PHP не может обновить страницу, но используя заголовок Refresh или метатег , как описано в другом месте, PHP может сказать браузеру отображать текущую страницу до истечения времени ожидания, а затем обновить страницу.
@Patriks Почему вы продолжаете использовать слово «технически», PHP не обновляет страницу. Хотя это серверный язык, но часть его функциональности включает тег заголовка, который он использует для управления заголовком html. Как вы думаете, что происходит с javascript, когда вы используете код window.location, библиотека javascript использует команду для управления заголовком html. Поэтому, если вы продолжаете говорить, что технически PHP не обновляет страницу, вы также можете сказать, что JavaScript не обновляет, и вы оба ошибаетесь. Это командная строка в указанном теге, которая управляет заголовком, поэтому технически она обновляет страницу.
Один трюк заключается в том, чтобы добавить случайное число в конец URL-адреса, так что вам не нужно каждый раз переименовывать файл. Например:.
echo "
"
Браузер не будет кэшировать его, пока случайное число отличается, но веб-сервер игнорирует его.
PHP: Как обновить страницу
Первый и самый простой способ — использовать функцию header(). Она позволяет отправить сырой HTTP заголовок клиенту. Пример:
Здесь число после «Refresh:» — это время в секундах, через которое произойдет обновление страницы.
2. Использование JavaScript
Также можно использовать JavaScript для обновления страницы. Это может быть полезно, если вы хотите контролировать обновление страницы на стороне клиента. Пример:
'; echo 'window.location.reload();'; echo ''; ?>
В этом случае, страница будет обновляться каждый раз, когда будет выполняться этот PHP скрипт.
В заключение, хотелось бы отметить, что хотя обновление страницы может быть полезной функцией, его следует использовать обдуманно, чтобы не создать неудобств пользователю.
- Получить ссылку
- Электронная почта
- Другие приложения
Комментарии
Отправить комментарий
Популярные сообщения
Python вывести количество элементов списка
Python: Вывод количества элементов списка В этой статье мы рассмотрим как выводить количество элементов списка с помощью языка программирования Python. Использование функции len() Для определения количества элементов в списке в Python, используйте встроенную функцию len() . my_list = [1, 2, 3, 4, 5] elements_count = len(my_list) print(«Количество элементов в списке:», elements_count) Этот код создает список my_list , а затем использует функцию len() для подсчета элементов в списке. Результат будет выведен на экран. Использование цикла for Если вы хотите подсчитать количество элементов списка без использования функции len() , вы можете использовать цикл for . my_list = [1, 2, 3, 4, 5] elements_count = 0 for _ in my_list: elements_count += 1 print(«Количество элементов в списке:», elements_count) В этом примере мы инициализируем переменную elements_count значением 0, а затем для каждого элемента в списке увел
Python как перевести число в другую систему счисления
Преобразуйте числа как профессионал! Узнайте, как Python может перевести любое число в любую систему счисления. Даже если вы никогда раньше не сталкивались с программированием, эта статья поможет вам стать экспертом в считывании двоичных, восьмеричных и шестнадцатеричных чисел. Не пропустите возможность раскрыть секреты произвольной системы счисления в Python! Python: Перевод числа в другую систему счисления В языке программирования Python преобразование числа в другую систему счисления может быть выполнено с использованием встроенных функций и методов. Преобразование чисел в двоичную систему Python предоставляет встроенную функцию bin() для преобразования числа в двоичную систему. # Пример преобразования числа в двоичную систему num = 18 binary_num = bin(num) print(binary_num) # Вывод: 0b10010 Преобразование чисел в восьмеричную систему Функция oct() в Python преобразует число в восьмеричную систему. # Пример преобразования числа в восьмеричную систему num = 18
Как сделать шашки на python
Как сделать шашки на Python Как сделать шашки на Python В этой статье мы рассмотрим, как создать простую игру в шашки на Python с использованием библиотеки Pygame. Подготовка Для начала установите библиотеку Pygame, используя следующую команду: pip install pygame Создание доски import pygame pygame.init() WIDTH, HEIGHT = 800, 800 ROWS, COLS = 8, 8 SQUARE_SIZE = WIDTH // COLS WHITE = (255, 255, 255) BLACK = (0, 0, 0) RED = (255, 0, 0) BLUE = (0, 0, 255) def draw_board(win): win.fill(WHITE) for row in range(ROWS): for col in range(row % 2, COLS, 2): pygame.draw.rect(win, BLACK, (row * SQUARE_SIZE, col * SQUARE_SIZE, SQUARE_SIZE, SQUARE_SIZE)) def main(): win = pygame.display.set_mode((WIDTH, HEIGHT)) pygame.display.set_caption(«Checkers») clock = pygame.time.Clock() run = True while run: clock.tick(60) for event in pygame.event.get(): if event.ty