Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @IBAction func btnSignIn(_ sender: AnyObject) {
- //deklarasi variable
- let username:NSString = etUsername.text! as NSString
- let password:NSString = etPass.text! as NSString
- //pengecekan apabila nilai nya kosong
- if ( username.isEqual(to: "") || password.isEqual(to: "") ) {
- let alertView:UIAlertView = UIAlertView()
- alertView.title = "Sign in Failed!"
- alertView.message = "Please enter Username and Password"
- alertView.delegate = self
- alertView.addButton(withTitle: "OK")
- alertView.show()
- } else {
- do {
- let post:NSString = "username=\(username)&password=\(password)" as NSString
- NSLog("PostData: %@",post);
- // let url:NSURL = NSURL(string:"http://192.168.2.30/JsonLogin/jsonlogin2.php")!
- let url:URL = config.url as URL
- let postData:Data = post.data(using: String.Encoding.ascii.rawValue)!
- let postLength:NSString = String( postData.count ) as NSString
- let request:NSMutableURLRequest = NSMutableURLRequest(url: url)
- request.httpMethod = "POST"
- request.httpBody = postData
- request.setValue(postLength as String, forHTTPHeaderField: "Content-Length")
- request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
- request.setValue("application/json", forHTTPHeaderField: "Accept")
- var reponseError: NSError?
- var response: URLResponse?
- var urlData: Data?
- do {
- urlData = try NSURLConnection.sendSynchronousRequest(request as URLRequest, returning:&response)
- } catch let error as NSError {
- reponseError = error
- urlData = nil
- }
- if ( urlData != nil ) {
- let res = response as! HTTPURLResponse!;
- // NSLog("Response code: %ld", res?.statusCode);
- //
- if ((res?.statusCode)! >= 200 && (res?.statusCode)! < 300)
- {
- let responseData:NSString = NSString(data:urlData!, encoding:String.Encoding.utf8.rawValue)!
- NSLog("Response ==> %@", responseData);
- //var error: NSError?
- let jsonData:NSDictionary = try JSONSerialization.jsonObject(with: urlData!, options:JSONSerialization.ReadingOptions.mutableContainers ) as! NSDictionary
- let success:NSInteger = jsonData.value(forKey: "success") as! NSInteger
- //[jsonData[@"success"] integerValue];
- NSLog("Success: %ld", success);
- if(success == 1)
- {
- NSLog("Login SUCCESS");
- let prefs:UserDefaults = UserDefaults.standard
- prefs.set(username, forKey: "USERNAME")
- prefs.set(1, forKey: "ISLOGGEDIN")
- prefs.synchronize()
- self.dismiss(animated: true, completion: nil)
- } else {
- var error_msg:NSString
- if jsonData["error_message"] as? NSString != nil {
- error_msg = jsonData["error_message"] as! NSString
- } else {
- error_msg = "Unknown Error"
- }
- let alertView:UIAlertView = UIAlertView()
- alertView.title = "Sign in Failed!"
- alertView.message = error_msg as String
- alertView.delegate = self
- alertView.addButton(withTitle: "OK")
- alertView.show()
- }
- } else {
- let alertView:UIAlertView = UIAlertView()
- alertView.title = "Sign in Failed!"
- alertView.message = "Connection Failed"
- alertView.delegate = self
- alertView.addButton(withTitle: "OK")
- alertView.show()
- }
- } else {
- let alertView:UIAlertView = UIAlertView()
- alertView.title = "Sign in Failed!"
- alertView.message = "Connection Failure"
- if let error = reponseError {
- alertView.message = (error.localizedDescription)
- }
- alertView.delegate = self
- alertView.addButton(withTitle: "OK")
- alertView.show()
- }
- } catch {
- let alertView:UIAlertView = UIAlertView()
- alertView.title = "Sign in Failed!"
- alertView.message = "Server Error"
- alertView.delegate = self
- alertView.addButton(withTitle: "OK")
- alertView.show()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement