0

ユーザーの電子メールに承認を送信するために使用しているこのコードがあります。私が必要とするのは、ユーザーがリンクをクリックしたときです。最初にログインしてから、承認プロセスを進める必要があります。次のコードを試して、セッションが登録されていないかどうかを確認し、ユーザーに強制的にログインさせました(index.php):

global $user_ID;
$user_ID = $_SESSION['empName'];
if ($user_ID == '') { 
header('Location: index.php'); exit(); 
} 
echo "<INPUT type='hidden' name='Code' size = '6' value ='hr1.php' />";
if(isset($_POST['Code'])){$Code = $_POST['Code'];}
mysql_close($con);

今、ユーザーを前のページ (リンク) にリダイレクトする方法が必要です

何か案は???

4

4 に答える 4

1

ログインページへのリダイレクト中に、return_url というセッション値を保存します

$_SESSION['return_url'] = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

次に、ログインが成功した場合は、return_url が存在するかどうかを確認します。存在する場合は、に戻ります$_SESSION['return_url']

header("Location: ".$_SESSION['return_url']);
于 2013-05-27T08:42:27.000 に答える
0

parameter彼がリンクをクリックしてログインしていないときのように、現在の URL を送信しないのはなぜですか?

つまりJS、たとえば、リンクをクリックしたときに次のparameterように URL に追加する必要があります。?lastUrl=/foo/foo.com

次に、URL を変数に保存し、ユーザーがログインしているかどうかを確認し、変数 (最後の URL) を返します。

JS の提案:

jQueryなし

window.onload = function() {
    var element = document.getElementById('checkLogin');
    element.setAttribute('src') = element.getAttribute('src') + '?' + 
        window.location.href;
}   // or you can add it into onclick method of your link,
    // but I think this is easier.
于 2013-05-27T08:39:17.433 に答える