2012-01-04 4 views
-1

私はPHPについては何も知らないけど、私のアプリケーションでは、ユーザーのログインとログアウトを実装する必要があります。私はこれを見つけたnice tutorialと正常にログインを実装しましたが、どうすればログアウトできますか?私はちょうどiPhone側について、特にGoogleに関する情報を見つけることができません。 PHPチュートリアルでは、セッションやそのようなことに関する多くの理論について、私の特定のイベントには当てはまりません。私はその理論を学ぶために時間を費やしたいですが、まずPHPの基礎を学ばなければなりません。これは私が現在必要としていることではありません。iPhoneアプリケーションでログアウトを実行する方法は?

私が必要とするのは、ログアウトを実装する正しい方法を理解することです。

  1. ログインとログアウト時に、iPhoneアプリとPHPスクリプトの間の標準的なやりとりの仕組みを簡単に説明してくれてうれしいです。
  2. これはもっと重要です。ログアウトを実装する方法を示すphpと客観的なコードがいくつか用意されていますか?私たちのアプリケーションログアウトユーザーがログアウトするために考えられているURLを呼び出すときに私は(あなたがやったことを)

    をjumpoverます

    ログイン:私たちは、このスキーマを使用する我々のアプリで

+1

正確に必要なものは?タイムアウトによるログアウトまたはユーザーアクティビティによるログアウトアクティビティによって - それが問題だとは思わない場合は、URLを呼び出すだけです。成功するかどうか、ユーザーがログアウトした場合はエラーを返し、そうでない場合はエラーを返します。 PHP側では、セッションを使用している場合はsession_close()で$ _SESSIONを設定解除し、cookieの場合はsetcookie()でクッキーを削除します。時間外にcron仕事をセットアップする場合は、必要なものだけを言うと、必要な場合は詳細を説明します。 – devdRew

+0

まず、* login *の実装方法に依存します。私はセッションベースですか?次に、クッキーをクライアントに投げ捨て、サーバー上のセッションを破棄するだけです。これはそれぞれの関数呼び出しの1つです。 – deceze

+0

クイックヒント、phpで 'mysql_real_escape_string'を使ってSQLインジェクションを止める(悪い!) '$ u = mysql_real_escape_string($ _ GET [' username ']); 'と $ pw = mysql_real_escape_string($ _ GET ['パスワード ']);' – Savid

答えて

2

。たとえば、http://ourcoresyste.com/logout.php

申し訳ありませんが、私はiOSデベロッパーではありません。したがって、アプリケーションの呼び出し方法はわかりませんが、ログインが完了していれば知っておく必要があります。あなたはこのようになりますJSONレスポンス解析し、あなたのアプリに比べて

<?php 
    if (!isset($_SESSION)) 
    { 
     exit(json_encode(array('code' => 0, 'message' => 'Logout successful'))); 
    } 
    esle 
    { 
     $user = $_SESSION['user_id']; // suppose you have stored into $_SESSION['user_id'] logged in user; 
     // Do some stuff while logout, maybe some DB interactions. 
     if ($shit_happens) 
     { 
      exit(json_encode(array('code' => 1, 'message' => 'Shit happens'))); 
     } 
     unset($_SESSION['user_id']); // or session_destroy(), if you want completly remove all information about user. 
     exit(json_encode(array('code' => 0, 'message' => 'Logout successful'))); 
    } 

:スクリプトlogout.phpで

{"code":0,"message":"Your detailed message"} 

とJSONレスポンスから取得したコードにより決定は、利用者でしたログアウトするかどうかを指定します。彼がいたなら、次に$ _SESSION ['user_id']に依存するPHPスクリプトを呼び出すと失敗します。これはおそらく、ユーザーがログアウトしたことを意味します。

私はそうだと思います。

+0

なぜログアウトするヒット作っていますか?本当にその必要はありません。保存されたデータ、保存されたユーザー名とパスワードなどのように、クリアする必要があるデバイスをクリアする必要があります。 – mattjgalloway

+0

サーバー側に保存されたPHPセッション、セッションを使用すると、デバイスのすべてをクリアしたにもかかわらず、 SERVERはあなたを覚えています。 – devdRew

+0

しかし、あなたはログアウト中にあなたを打つデバイスに頼ることはできません。ユーザーがアプリを削除するとどうなりますか?また、デバイスを復元するとどうなりますか? – mattjgalloway

関連する問題