2011-02-05 10 views
3

私は、ログのリストを含むウェブページを持つウェブサイトを持っています。 今、私は通常、いくつかのユーザー などのために、そのページにアクセスするためのリンクを与える:この.ITにいくつかのユーザーがクリックは彼にログイン画面を与えるだろう.Butログイン後にそれがあったページに移動しない場合に今http://172.20.22.77/someapp/results.htm?id=45ログイン後に正しいURLに転送する方法

意図した。私は、ウェブサイトを実装するためにセッションを使用しています、そして、それは多くのページを持っています、したがってセッションは、ページをブラウジングするユーザーを追跡するために使用されます。

私は、ユーザーがログインした後に尋ねられているURLをどのようにリダイレクトできるか教えてください。

答えて

6

ログインページにリダイレクトする前に、ユーザーがセッション中にアクセスしたURLを入れてください。ログインページは、ユーザーを認証した後、その保存されたURLにリダイレクトされます。ログインページで

session_start(); 
$_SESSION['after_login'] = $_SERVER['REQUEST_URI']; 
header("Location: login.php"); 

:ログインを必要とするページで

session_start(); 
if (user has entered correct username and password) { 
    header("Location: http://example.com" . $_SESSION['after_login']); 
} 
+0

Danに感謝します。あなたは私の質問を正しく受けました。 – Vidya

-2
<?php 
header('Location: http://www.example.com/'); 
?> 

http://php.net/manual/en/function.header.php

+0

あなたは質問の本文ではなく、質問の本文に答えました。これは、ユーザーを正しいページに戻す方法です。 –

+0

いいえ、ページをリダイレクトする方法はわかりません。今私はhttp://172.20.22.77/someapp/results.php?id=45のリンクを与えます。 http://172.20.22.77/someapp/login.phpにユーザを連れて行く...今私はどのように結果ページにユーザを連れて行くのですか?質問があることを願っています – Vidya

+0

ちょっと質問を読んでください... "親切にも、ユーザーがログインした後に尋ねられているURLをどのようにリダイレクトできるか教えてください。ユーザーがセッションにのみアクセスするためにセッションを使用する場合は、 "ヘッダー" – Efazati

1

あなたは単にリダイレクトを行うセッションで、ログインする前にURIを保存することができます。

$_SESSION['URI'] = $_SERVER['REQUEST_URI']; 

// ... 

header('Location: http://mysite.com ' . $_SESSION['URI']; 
0

保護されたページでこれを使用して、現在のページのURLとクエリ文字列をセッションに保存します。

成功したログイン後にこれを使用して、セッションに格納されたページにユーザーをリダイレクトします。

<?php 
    session_start(); 
    header('Location: '.$_SESSION['url_attempt']); 
?> 
関連する問題