Отправка ссылки в третий файл

Статус
В этой теме нельзя размещать новые ответы.

fredis69

Постоялец
Регистрация
24 Окт 2008
Сообщения
84
Реакции
2
Доброго времени суток!
У меня такой вопрос: Как сделать чтобы, когда пользователь нажав по ссылке переходит на второй файл где происходит обработка и автоматически перенаправляется в третий файл, где произвотится проверка и если всё нормально то возвращается на первый файл (допустим index.php или другая страница, смотря на какой странице он нажмёт на ссылку).
Вопрос: Как передать ссылку страницы на которой пользователь кликнул по ссылке в третий файл. Короче чтобы после обработки в двух файлах он вернулся на туже страницу.

Первый файл(страница на которой пользователь кликнит по ссылке:(
PHP:
$urll=strtok($_SERVER['REQUEST_URI'],"?"); /*Узнаём адрес данной страницы*/

Второй Файл:
PHP:
header('Location: адрес_третьего_файла.php');


Третий файл:
PHP:
/* Если всё нормально то возвращам пользователя на страницу на которой была нажата ссылка */
header("Location: $urll");
 
В первом файле сохрани переменную $urll в сессию:
session_start();
$urll=strtok($_SERVER['REQUEST_URI'],"?"); /*Узнаём адрес данной страницы*/
$_SESSION['urll'] = $urll;

А в третьем прочитай эту переменную:

session_start();
header("Location: ".$_SESSION['urll']);
 
Как сделать, чтобы в автоматическом письме покупателю
шла ссылка для подтверждения заказа, нажав на которую
он подтвердит заказ.

А данные, внесенные им до этого,
занесутся в базу?
 
сохраняешь данные изначально в бд, только какое-то поле помечаешь как '0' (не подтвердил), в другом поле генерируешь хешь, который и передаешь в поддтверждающей ссылке. Скрипт потом сверяет хеш с переданным, меняет флаг '0' на '1'. Для удаления неподтвержденных заказов можешь выполнять скрипт удаления заказов, где поле=0 и какой-нить интервал времени. Один из вариантов.
 
То есть, чтобы хеш сгенерить надо сессию открывать?
Вот что-то подобное у меня в голове крутилось, никак не мог сформулировать.
 
Сессия открывается, чтобы сохранить данные пользователя при переходе с одной странички сайта, на другую. В данном случае можно и без них.
Хешь можно сгенерировать, например вот так:
$validationCode = md5(uniqid(rand(),1));
 
Так, понятно.
Наверно последний вопрос (на эту тему :):(
Количество символов в коде - это единичка, или нужно указывать в круглых скобках после rand ?
 
Нет, "хэш представляет собой 32-значное шестнадцатеричное число".
Единичка улучшает алгоритм возврата uniqid();
Учимся читать мануалы:
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 
Готово.

Сделал ссылку, работает отлично.
Вылезла другая проблема...
Не могу имя передать в письме, чего-то поменял, раньше работало...

Видимо надо все же на курсы оффлайн идти..
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху