2011-06-18 4 views
0

私はこれを検索しましたが、私はまだ分かりません。 asp.netでは、私はプログラム上、サーバー側のユーザーにログインすることができます...そして、私はサイトをプルアップするときにフォームに自動的に埋め込まれるクライアントサイドスクリプトについては言いません。私はサーバ側で何かをチェックし、もしそうなら、それらをサイトに記録することができます。 falseの場合は、ユーザー名/パスワード形式にリダイレクトして、ユーザー名とパスワードを入力することができます。ASP.netのようにプログラムでユーザーをログインさせますか?

PHPでも同様のことが可能ですか?

私は私がやりたい何かを持っているが、確かに

おかげで開始することも可能ではない場合、何かに時間を無駄にしないでいいだろう!

- = - = - =

asp.netでのプロセスは、次のように動作します。

  1. 資格情報を設定する
  2. コールformsauthentication.setauthcookie正しいかどうかを確認するためにコールuservalidate方法所定のページへの認証クッキー
  3. リダイレクトユーザー

例えば、

Response.Cookies.Remove(FormsAuthentication.FormsCookieName); 
    FormsAuthentication.SetAuthCookie("username", false); 
    Response.Redirect("samepage.aspx"); 

チケットのみが処理されます。

+0

http://php.net/manual/en /function.setcookie.php – Dan

+0

これはできませんでしたが、Facebookのようなサイトはかなり魔法的でなければならないでしょうか?そして、ほとんどのブログソフトウェア。インターネット上のその他のウェブサイトのほとんどは、 –

+0

re:Facebookのようなサイトはかなり魔法でなければならないだろうか?いいえ、実際には、Facebookのユーザー名とパスワードを入力してください。私が言っていることは、あなたはしません。たとえばasp.netでは、ユーザーが12.192.191かどうかを確認できます。Trueであれば、ユーザー名とパスワードを入力せずにログインし、falseの場合はログインフォームに送信します。私はPHPをよく理解していないので、それが私が求めていたものです。 – Jay

答えて

1

確かに - あなたはPHP Sessionsにお読みください。

  1. フォームから送信される標準のPOSTリクエストを経由してユーザーの資格情報を受け付けます。

  2. 資格情報を取得し、一致するかどうかを確認します(通常はDBに問い合せます)。

  3. もしそうであれば、セッション変数を設定して、ユーザーが認証済みであることを示します($_SESSION['user_is_authenticated'] = true)。

  4. ユーザーが認証されているかどうかを確保する必要がある、あなたの以降のページでチェックイン - 彼がいなかったら、ログインページにリダイレクト:if (!$_SESSION['user_is_authenticated']) header('location:login.php');

+0

Jahufar - フォームから送信された標準的なPOST要求を介して資格情報を受け入れます。それは私がasp.netでスキップすることができる部分で、私はPHPでは分かりませんでした。たとえば、asp.netで、私はハードウェアシリアル番号を取得するプログラムを書いた。暗号化されたクッキーでサーバーに送信します。シリアルが有効であれば、ユーザーは何もせずにログインします。私は、私のプログラムが(asp.netとPHPの間の共有データベースを介して)PHPで動作するPHPプラグインについて考えていました。ユーザーの資格情報を持たない「真」の場合は、それらをログに記録することが重要です。しかし、それは可能です。ありがとう – Jay

1

ASPは分かりませんが、PHPでセッションを設定するだけです。たとえば、ログインスクリプトがセッション内のユーザーオブジェクトを検索する場合、そのユーザーをデータソースからロードしてセッションにロードするだけです。また、チェックしている他のフラグを設定する必要があります。

これは、管理者がサイトのユーザーとしてログインできるようにするための一般的な要件です。

+0

PHPは分かりませんが、少し使いました。私はそれが動作するかもしれないと思う。私がしたいことは、asp.netアプリとPHPサイトの間の共有データベースをチェックすることです。データベースのビットが "true"の場合、ユーザ名とパスワードのフィールドを使わずにPHPサイトにログインできます。検証に失敗した場合は、フォームベースのログインに変更されます。これはasp.netでかなり簡単でした。 PHPで可能かどうかはわかりませんでした。ありがとう – Jay

関連する問題