Redirect в CodeIgniter [требует правки]

339
21 декабря 2016, 02:00

Для чего используется redirect?

Answer 1
$remember = (bool) $this->input->post('remember');
  if ($this->ion_auth->login($this->input->post('identity'), $this->input->post('password'), $remember))
  {
    redirect('admin', 'refresh');
  }
  else
  {
    $this->session->set_flashdata('message',$this->ion_auth->errors());
    redirect('admin/user/login', 'refresh');
  }

Смотри пример. Если авторизация прошла, перенаправляем пользователя на страницу admin. Если нет, то перенаправляем на admin/user/login. Другими словами redirect - это перенаправление.

Answer 2

Причин для использования редиректа может быть масса: например редирект с одного сайта на другой или с одной страницы на другую. К примеру ваш сайт сменил домен old.domain.com и вы бы хотели чтобы люди при обращении к нему попадали на new.domain.com Эти редиректы самые распространенные и имеют код 301

Еще один вид популярного редиректа 404 - это когда пользователь пытается достучаться до несуществующего адреса на вашем сайте, в таком случае все пользователи будут направлены на страницу "Извините но такой странице не существует"

Не менее распространенный редирект 403 - данный код означает, что пользователь не имеет прав доступа к данной странице.

Еще пример: пользователя надо отправить на определенную страницу сайта после определенных действий. К примеру пользователь оплатил заказ и мы делаем редирект на страницу "Спасибо за вашу покупку"

И таких вавриантов может быть масса.

Более подробно вы можете почитать тут

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

READ ALSO
Сервлет для web приложения

Сервлет для web приложения

Есть БД MySQL с таблицей mytable (column ID, column NAME), пишу приложение для вывода в файл HTML результатов выполнения хранимых процедур (вывести таблицу,...

375
Неполучения исправить ошибку [дубликат]

Неполучения исправить ошибку [дубликат]

На данный вопрос уже ответили:

291