2012-05-19 67 views
0

我正在運行一個phpmyadmin數據庫並製作了一個3列的表格。用戶名,密碼和年齡。在Xcode ive做了一個登錄應用程序,使用用戶名和密碼登錄Xcode - 在文本字段中顯示數據庫表值

NSString *strURL = [NSString stringWithformat:@"http://localhost/database/login.php?username=%@&password=%@", usernamefield.text, passwordtextfield.text]; 

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]]; 

NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding]; 

if ([strResult isEqualToString:@"1"]) 

此代碼工作正常! 然後可以在按登錄時在文本標籤中顯示數據庫(AGE)中的第三列嗎?所以登錄用戶的年齡將顯示在應用程序頂部欄的文本標籤中?

回答

0

你可以做很多事情來提高安全性(不發送密碼作爲GET請求的參數,它可能(將)在某些未保護的日誌上結束),可靠性(你的腳本可能不是隻需要在本地主機上運行)或該代碼的響應(不進行同步調用)。

但是,從該代碼作爲一個簡約的起點開始,您可以配置您的php腳本以迴應年齡值並將此值分配到文本框/窗口標題/任何您想要的。 但如何檢查用戶是否正確連接?您在本地主機上運行的腳本可能會使用字符串進行錯誤的身份驗證。

例如:

NSString *strURL = [NSString stringWithformat:@"http://localhost/database/login.php?username=%@&password=%@", usernamefield.text, passwordtextfield.text]; 

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]]; 

NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding]; 

if ([strResult isEqualToString:@"auth_error"]){ 
    // do something 
} else { 
    [window setTitle:strResult] 
} 

但是,這確實是一個開始。 之後,您可能有興趣使用JSON來回答請求,然後使用NSJSONSerialization來讀取請求,從而使您的腳本更加可靠和RESTful。

相關問題