Как в php сделать переход на другую страницу
Перейти к содержимому

Как в php сделать переход на другую страницу

  • автор:

В операторе if переход на другую страницу

Делайте header(«Location: page.php»); exit; , если я правильно вопрос понял. После Location либо полный адрес ( http://. ), либо страницу, относительно корня сайта.

13 ноя 2011 в 16:15

4 ответа 4

Сортировка: Сброс на вариант по умолчанию

Есть такая функция header.

header() используется для отправки необработанных HTTP -шапок. См. в спецификации HTTP/1.1 информацию о HTTP headers .

Отслеживать
371 1 1 золотой знак 5 5 серебряных знаков 13 13 бронзовых знаков
ответ дан 13 ноя 2011 в 16:09
nail_gizatullin nail_gizatullin
104 1 1 золотой знак 1 1 серебряный знак 3 3 бронзовых знака

Правильный совет. Только автор должен помнить, что вызов хедера возможен только ДО вывода на экран любого текста.

13 ноя 2011 в 16:14
Если вызов хедера возможен только ДО вывода на экран любого текста, то почему тогда у меня работает:

text

else header(«Location:google.com»); exit(); ?> >

Как в PHP реализовать переход на другую страницу?

Предположим, что вы хотите, чтобы пользователям, которые переходят на страницу https://example.com/initial.php отображалась страница https://example.com/final.php . Возникает вопрос как в PHP реализовать редирект на другую страницу?

Это можно сделать с помощью несколько методов PHP , JavaScript и HTML . В этой статье мы расскажем о каждом из методов, которые можно использовать для PHP перенаправления на другую страницу.

Вот несколько переменных, которые мы будем использовать:

Обновлено: 2022-08-22 17:36:58 Вадим Дворников автор материала

Использование функции PHP header() для редиректа URL-адреса

Если хотите добавить редирект с initial.php на final.php , можно поместить на веб-странице initial.php следующий код. Он отправляет в браузер новый заголовок location :

Здесь мы используем PHP-функцию header() , чтобы создать редирект. Нужно поместить этот код перед любым HTML или текстом. Иначе вы получите сообщение об ошибке, связанной с тем, что заголовок уже отправлен. Также можно использовать буферизацию вывода, чтобы не допустить этой ошибки отправки заголовков. В следующем примере данный способ перенаправления PHP показан в действии:

Чтобы выполнить переадресацию с помощью функции header() , функция ob_start() должна быть первой в PHP-скрипте . Благодаря этому не будут возникать ошибки заголовков.

В качестве дополнительной меры можно добавить die() или exit() сразу после редиректа заголовка, чтобы остальной код веб-страницы не выполнялся. В отдельных случаях поисковые роботы или браузеры могут не обращать внимания на указание в заголовке Location . Что таит в себе потенциальные угрозы для безопасности сайта:

Чтобы прояснить ситуацию: die() или exit() не имеют отношения к редиректам. Они используются для предотвращения выполнения остальной части кода на веб-странице.

При PHP перенаправлении на страницу рекомендуется использовать абсолютные URL-адреса при указании значения заголовка Location . Но относительные URL-адреса тоже будут работать. Также можно использовать эту функцию для перенаправления пользователей на внешние сайты или веб-страницы.

Вывод кода JavaScript-редиректа с помощью функции PHP echo()

Это не является чистым PHP-решением . Тем не менее, оно также эффективно. Вы можете использовать функцию PHP echo() для вывода кода JavaScript , который будет обрабатывать редирект.

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

Ниже приводится несколько примеров, в которых использованы разные методы JavaScript для редиректа с текущей страницы на другую:

self.location='https://example.com/final.php';"; echo ""; echo ""; echo ""; ?>

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

Использование метатегов HTML для редиректа

Также можно использовать базовый HTML для выполнения редиректа. Это может показаться непрофессиональным, но это работает. И не нужно беспокоиться о том, что в браузере отключен JavaScript или ранее была отправлена ошибка заголовков:

Также можно использовать последнюю строку из предыдущего примера, чтобы автоматически обновлять страницу каждые « n » секунд. Например, следующий код будет автоматически обновлять страницу каждые 8 секунд:

Заключение

В этой статье я рассмотрел три различных метода перенаправления с index php , а также их преимущества и недостатки. Конкретный метод, который стоит использовать, зависит от задач проекта.

Редирект на другую страницу на php

Редирект на другую страницу на php

Редирект на другую страницу в php осуществляется с помощью функции header.

Простой вызов функции header для редиректа:

Будьте внимательны, функция не будет работать, если перед ней есть любой html-код и не каких пробелов, постарайтесь размещать её в верху страницы. Также проблемы вызова бывают из-за кодировки, работайте в UTF-8.

Вызов header, для редиректа с задержкой 10 секунд.

PHP. Перенаправление на другую страницу (Redirect)

Пример перенаправления через указанное количество секунд:

Пример Redirect в JavaScript (это может работать не у всех):

  

Пример Redirect в JavaScript через 5 секунд (это может работать не у всех):

  

Пример Redirect в HTML через 5 секунд (если указать 0, то будет переадресовывать сразу):

  • Нажмите, чтобы открыть на Facebook (Открывается в новом окне)
  • Нажмите, чтобы поделиться на Twitter (Открывается в новом окне)
  • Нажмите, чтобы поделиться записями на Pinterest (Открывается в новом окне)
  • Нажмите, чтобы поделиться на LinkedIn (Открывается в новом окне)
  • Нажмите, чтобы поделиться записями на Tumblr (Открывается в новом окне)
  • Нажмите, чтобы поделиться в Telegram (Открывается в новом окне)
  • Ещё
  • Нажмите, чтобы поделиться записями на Pocket (Открывается в новом окне)
  • Нажмите, чтобы поделиться на Reddit (Открывается в новом окне)
  • Нажмите, чтобы поделиться в WhatsApp (Открывается в новом окне)
  • Нажмите для печати (Открывается в новом окне)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *