1

誰かが私のサイトの記事やフォーラムのアイテムなどのアイテムにコメントしたい場合。ログイン/アカウントの作成を促します。クライアントがログインしたときに、作成したいコメントに戻るようにすることは可能ですか?

しかし、今ではこの流れのようにはなりません。ログインしていないユーザーはログインページにリダイレクトされますが、このセクションにログインした後、ユーザーは現在の投稿コメント領域に自動的にリダイレクトされます。方法はありますか?

<?php if ($sessionUser == 1 || $sessionSeller == 1 || $sessionadmin == 1) { ?>

    <form class="cp_form"
          action="article_comments_db.php"
          method="post"
          name="frm_comment"
          id="frm_comment">

        <div id="div_req_comment" class="cp_infopanel_off">
            <span><?= $_Reviews ?></span>:<span class="red">*</span>

            <textarea class="cp_textarea"
                      id="req_comment"
                      name="req_comment"
                      onBlur="do_blur(this.id)"
                      onFocus="do_focus(this.id)"></textarea>

            <div id="infobox_req_comment" class="cp_infobox"></div>
        </div>

        <input type="button"
               id="btn_submit"
               class="rp_button"
               value="<?= $_Submit ?>"
               onClick="validate_form('frm_comment')" />

        <input type="hidden"
               name="id" value="<?php echo $id ?>" />
    </form>

<?php } else {
?>

    <br/><br/>
    <div align="right">

        <input type="button"
               id="btn_submit"
               class="rp_button"
               value=" <?= $_Post_comment ?> "
               onClick="window.location.href='login.php?event=Account'" />
    </div>

<?php
}
4

2 に答える 2

0

私はあなたにそれがどのように達成されることができるかについての考えを与えることができます。

  1. ログインページにリダイレクトするときに、$_SERVER['HTTP_REFERER']空かどうかを確認します。空でない場合は、セッションに保存します。

  2. ログインに成功したら、セッションに保存した値を使用して、ユーザーが別のページからアクセスしたかどうかを確認します。

空でない場合は、セッション変数に定義されているのと同じページにユーザーをリダイレクトします。そして、リダイレクトする前に、セッション値を変数に保持し、このセッション変数を破棄します。

于 2012-07-20T05:06:59.693 に答える
0

ユーザーがアクセスした現在のページのIDまたはURL( urlencode )を使用してlogin.php?event=Accountを呼び出すことができます。

login.php?event=Account&visitedpageid=1

ログインフォームでは、$_GETを使用してID/URLを取得し、非表示の入力に入れることができます。

<input type="hidden" name="visitedpage" value="<?php echo $_GET['visitedpageid']; ?>">

ログインが正しければ、その非表示の入力のPOST値を使用してリダイレクトします。

$_POST['visitedpage']

get-parameterが設定され( isset)、既存のページと一致するかどうかを必ず確認してください。

于 2012-07-20T05:07:14.737 に答える