Как перенаправить пользователей на свои идентификационные URL / целевые страницы после входа в систему? Строки запросов перенаправленных URL должны показывать значения, связанные с их идентификаторами (Первичный ключ), хранящимися в базе данных Mysql.
Например,
Соответствующие значения «id» для 1-го, 2-го и 4-го пользователей – 1, 2, 3 и 4
Записанные страницы / целевые страницы должны выглядеть соответственно следующим URL-адресам после успешного завершения поиска пользователей.
www.anysite.com/anydirectory/user.php?id=1
www.anysite.com/anydirectory/user.php?id=2
www.anysite.com/anydirectory/user.php?id=3
www.anysite.com/anydirectory/user.php?id=4
* Вход в сеанс скрипта регистрации следующий: *
// это устанавливает сеанс и регистрирует пользователя в **
session_start();
// предотвращать атаки на сеанс.
session_regenerate_id (true);
// это устанавливает переменные в сеансе
$_SESSION['user_id']= $id; $_SESSION['user_name'] = $full_name; $_SESSION['user_level'] = $user_level; $_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']); **//update the timestamp and key for cookie** $stamp = time(); $ckey = GenKey(); mysql_query("update users set `ctime`='$stamp', `ckey` = '$ckey' where id='$id'") or die(mysql_error());
// установить файл cookie
if(isset($_POST['remember'])){ setcookie("user_id", $_SESSION['user_id'], time()+60*60*24*COOKIE_TIME_OUT, "/"); setcookie("user_key", sha1($ckey), time()+60*60*24*COOKIE_TIME_OUT, "/"); setcookie("user_name",$_SESSION['user_name'], time()+60*60*24*COOKIE_TIME_OUT, "/"); } header('Location: user.php'); } } else { //$msg = urlencode("Invalid Login. Please try again with correct user email and password. "); $err[] = "Invalid Username Or Password.";
Какой заголовок я должен использовать для перенаправления пользователей таким образом? Также, как создать целевую страницу с той же целью.
Любая помощь должна быть хорошо оценена.
Просто добавьте идентификатор пользователя из вашей $_SESSION
в URL, к которому вы перенаправляете.
header('Location: user.php?id=' . $_SESSION['user_id']);
Когда вы проверяете успешный вход в систему, верните идентификатор пользователя в свой запрос. Вот несколько быстрых псевдокодов:
Вы хотите перенаправить так:
http://www.anysite.com/anydirectory/user.php?id=1
то только
header("Location: user.php?id=".$userId);