На вашем месте я бы на самом деле перенаправил, если бы они не не увидели страницу в первый раз. Это создает более интуитивно понятный URL.
В любом случае, строго говоря, вы хотите использовать setcookie
при первом посещении сайта пользователем, а затем проверить, существует ли значение в $_COOKIE
по возвращении. Реально, вы, вероятно, хотите:
- Перенаправление, если cookie отсутствует
- Ссылка на целевой странице перенаправляет их на страницу, которая устанавливает cookie.
- Страница, которая устанавливает cookie, перенаправляет их на фактическую главную страницу.
Почему вы хотите установить значение после того, как пользователь нажимает на ссылку? Ну, таким образом, вы можете заставить их реально посмотреть на страницу, прежде чем продолжить, и я думаю, что это больше, чем вы хотите.
Ваш редирект может выглядеть следующим образом:
if( !isset( $_COOKIE[ 'seen_landing_page' ] ) )
{
header( 'Location: <other page>' );
die();
}
// do whatever else here.
После этого вы можете создать простую транзитную страницу:
setcookie('seen_landing_page',TRUE);
header( 'Location: <your main page>' );