natalya писал(а):
чтобы форма авторизации отображалась на всех страницах сайта поместить ее нужно в макете. Пример самой простой формы:
<form action=«/users/» method=«post»>
Все хорошо. Но выбрасывает ведь на страничку личного кабинета!
А если человеку захотелось комментарий оставить к новости, статье или товару в магазине.
Авторизовавшись, он попадает в Личный кабинет. И ищи потом страничку на которую хотел оставить свое мнение!
У меня такая реализация:
<div class="provodnik">
<h2 class="title">Личный кабинет</h2>
<div class="soderjanie"> <?
$SiteUsers = new SiteUsers();
$cur_id = $SiteUsers->GetCurrentSiteUser();
if ($cur_id <= 0)
{
?>
<form method="post" action="/users/">
Пользователь:<br />
<input type="text" name="site_user_login" /><br />
Пароль:<br />
<input type="password" name="site_user_password"/><br />
<input type="checkbox" name="remember_me" style="margin: 0px 10px 0px 0px; width: 16px;"/>Запомнить меня<br />
<input type="submit" value="Войти" name="apply" class="baton"/>
</form>
<a href="/users/registration/">Регистрация</a>
<br />
<a href="/users/restore_password/">Восстановить пароль</a><br />
Зарегистрированные пользователи получат <b>5%</b> скидку на всю продукцию.
Регистрация позволит Вам получить полный доступ ко всем разделам сайта видеть цены и делать заказ на продукцию через он-лайн каталог.
<?
}
else
{
?>
Добрый день,
<?
$name = $SiteUsers->GetSiteUser($cur_id);
echo " ";
if ($name['site_users_name'] != '')
{
$treat = $name['site_users_name']." ".$name['site_users_patronymic'];
}
elseif ($name['site_users_login'] != '')
{
$treat = $name['site_users_login'];
}
echo $treat;
{
echo "<form method='post' action='/users/?action=exit'><input type='submit' value='Выход' name='exit' class='baton'/></form>";
}
}
?>
</div>
</div>
Как сделать, чтобы после авторизации посетитель вернулся на страничку, на которой логинился?
action="./" не действует. "Назад" по ява-хистори из-за кэша не приемлимо. Как быть?
Подскажите заклинание. Философии не надо, лучше сразу код, ну, пожалуйста!
