-3

Xcode と Objective-C は初めてです。iOS アプリケーションのログイン機能を作成する必要があります。誰かがそれぞれのフィールドにユーザー名とパスワードを入力してログインをタップすると、アプリケーションはユーザー名とパスワードを保持する sqlite データベースと通信する必要があります。ユーザー名とパスワードのペアがデータベースのエントリと一致する場合、ユーザーは次のページに進むことができます。そうでない場合は、適切なエラー メッセージが表示されます。

4

2 に答える 2

1

SDLoginKitは良い出発点かもしれません。

于 2013-03-22T11:45:36.057 に答える
0
  1. boolean結果を返すメソッドを作成します。
  2. ユーザーがデータベースに入力したユーザー名とパスワードをチェックするクエリを作成します。
  3. ユーザー名とパスワードが一致する場合、メソッドはtrueそれ以外を返しますfalse
  4. の場合trueは、ログイン後にユーザーを次の画面に移動します。それ以外の場合はalert、無効な資格情報が表示されます。

    -(BOOL)validateUser
    {
        [self openDatabase];
    
        BOOL isValid = FALSE;
    
        sqlite3_stmt *compiledStatement;
    
    
        const char *sql ="select UserId from MstUser where Username = ? and Password = ?";
    
        if(sqlite3_prepare_v2(mainDatabase, sql , -1, &compiledStatement, NULL)==SQLITE_OK)
        {
            sqlite3_bind_text(compiledStatement, 1, [txtUsername UTF8String], -1, SQLITE_TRANSIENT);
            sqlite3_bind_text(compiledStatement, 2, [txtPasswrod UTF8String], -1, SQLITE_TRANSIENT);
            while (sqlite3_step(compiledStatement) == SQLITE_ROW )
            {
                isValid = True;
                int userId = sqlite3_column_int(compiledStatement, 0);
            }
        }
        else
        {
            NSLog(@"Error : -------'%s'", sqlite3_errmsg(mainDatabase));
        }
    
        sqlite3_finalize(compiledStatement);
        sqlite3_close(mainDatabase);
        compiledStatement = nil;
    
        return isValid;
    }
    
    if ([self validateUser])
    {
        //Login user
    }
    else 
    {
        //alert to show invalid user
    }
    
于 2013-03-22T11:37:49.857 に答える