Как перенаправить пользователей на их конкретные URL / целевые страницы после входа в систему? - PullRequest
0 голосов
/ 14 декабря 2011

Как перенаправить пользователей на их конкретные URL-адреса / целевые страницы после входа в систему?Строки запроса перенаправленных URL-адресов должны отображать значения, связанные с их идентификаторами (первичным ключом), хранящимися в базе данных Mysql.

Например,

Соответствующие значения «id»для 1-го, 2-го, 3-го и 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.";

Какой заголовок я должен использовать для перенаправления пользователей таким образом?Кроме того, как создать целевую страницу для той же цели.

Любая помощь приветствуется.

Ответы [ 3 ]

1 голос
/ 14 декабря 2011

Просто добавьте идентификатор пользователя из $_SESSION к URL-адресу, на который вы перенаправляете.

header('Location: user.php?id=' . $_SESSION['user_id']);
0 голосов
/ 14 декабря 2011

Вы хотите перенаправить, как это:

0 голосов
/ 14 декабря 2011

Когда вы проверяете успешный вход в систему, верните идентификатор пользователя в вашем запросе.Вот небольшой псевдокод:

  • В запросе: выберите user_id, где user_name =?и пароль =?
  • Если results.count = 1, сохраните user_id как $ user_id
  • Redirect для "www.anysite.com/anydirectory/user.php?id="$ User_Id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...