0

PHP、mySQL、Javascript を使用してログイン システムを作成しています。私のサイトは事実上、javascript で記述された 1 ページのアプリです。1 つの HTML ページのみです。すべての対話とナビゲーションは、javascript を介して行われます。

ユーザーが登録すると、アクティベーション列に 32 桁のキーを使用してデータベースにレコードを作成します。これをアクティベーションリンクとして登録者に電子メールで送信します。これにより、アカウントをアクティブ化する php ファイルが表示されます (エラーがある場合はアクティブ化されません)。すべて順調です。

アクティブ化 (またはエラー) の後、アカウントがアクティブ化されているかどうかを示す html ページ (例: header('somesite.com/success.html')) に移動できますが、特定の機能に戻すことをお勧めします。私の1ページのJavaScriptサイトで.どうすればこれを行うことができますか?

それらをサイトに連れて行くことはできますが、成功メッセージまたはエラーメッセージのどちらを表示するかを知るために、phpリダイレクトからサイトにメッセージを渡すにはどうすればよいですか?

http://somesite.com?activation=successなどのリダイレクトの URL に入れますか? もしそうなら、どうすればこの変数を私のJavaScriptに入れることができますか?

PHP アクティベーション スクリプトからセッション変数を設定し、それを自分のコードでチェックすることはできますが、それは非常に不器用に思えます。

URL にハッシュを設定し、それをコードで取得することもできますが、できればハッシュ ナビゲーションは避けます。これを達成する方法についてのアイデアはありますか?

以下のヘルプおよびサイトの他の場所からの最終的な回答:

function getURLParameter(name) {
return decodeURIComponent(
    (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
);
}

次に、 somesite.com?email=somebody%40else@somewhere.com&key=7da93f78cb4942555863c161f50f258d などの登録時のリダイレクト

これらの変数は、getURLParameter('email') および getURLParameter('key') と同じくらい簡単に取得できます。

みんなの助けに感謝します。このサイトが大好き

4

3 に答える 3

1

Javascript を使用して URL から変数を取得できます。

私は実際にJavascriptでURL変数を取得することについて同様の質問をしました(私はそれを見つけることができません).

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {vars[key] = value});
    return vars;
}

したがって、'activation' と呼ばれる GET 変数を取得するには、次のように関数を呼び出すだけです。

getUrlVars()['activation']
于 2013-02-28T10:34:43.017 に答える
1

1 ページのアプリにすべてが含まれているため、それをアクティベーションにも使用できます。アクティベーション リンクに移動しhttp://homesite.com?activation=<32characterkey>、アプリが GET パラメータを検出したら、AJAX を使用して PHP アクティベーションを呼び出し、ユーザーに通知します。結果。

于 2013-02-28T10:33:06.443 に答える
0

AJAX を使用してログインし、AJAX 成功/エラー コールバックで関数を呼び出す必要があります。

$.ajax()jQuery関数で簡単にできます

http://api.jquery.com/jQuery.ajax/

于 2013-02-28T10:31:32.397 に答える