Yvision.kzYvision.kz
kk
Разное
Разное
399 772 постов41 подписчиков
Всяко-разно
0
11:21, 05 апреля 2013

Передача данных с одного вью в другой, как?)

Делаю вход в приложение по логину и паролю, данные отправляются на сайт и там GET запросом сравниваются. Если есть, то он перекидывает на другой view, иначе показывает всплывающее окно с ошибкой.

Делал может и коряво, но работает. Вот только проблема в том, что передать данные о юзере который только что авторизовался не получается, вот код:

  1. Хедер файл:
  2. @property (strong, nonatomic) IBOutlet UITextField *userEmail;
  3. @property (strong, nonatomic) IBOutlet UITextField *userPassword;
  4. @property UIAlertView *errorEmptyField;
  5. @property (nonatomic, retain) NSMutableData *jsonData;
  6. - (IBAction)loginAction:(id)sender;
  7.  
  8. Имплементейшн файл:
  9. // Click on the Login Button Action
  10. - (IBAction)loginAction:(id)sender {
  11.  
  12. NSString *email = self.userEmail.text;
  13. NSString *password = self.userPassword.text;
  14.  
  15. NSString *strURL = [NSString stringWithFormat:@"http://АДРЕС_САЙТА/api/users/index.php?status=authorization&login=%@&password=%@&app_secret_key=***", email, password];
  16.  
  17. NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]];
  18.  
  19. NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];
  20.  
  21. // создаем объект с JSON-парсером
  22. SBJsonParser *jsonParser = [[SBJsonParser alloc] init];
  23.  
  24. // Парсим строку данных result в объект класса NSArray (массив)
  25. NSArray *dataObject = [jsonParser objectWithString:strResult];
  26.  
  27. NSString *status = [[dataObject valueForKey:@"success"] description];
  28.  
  29. if([status isEqualToString:@"1"]){
  30. [self performSegueWithIdentifier:@"successLogining" sender:sender];
  31.  
  32. }if([email isEqual:@""] && [password isEqual:@""]) {
  33. errorEmptyField = [[UIAlertView alloc] initWithTitle:@"Error"
  34. message:@"You didn't write anything. Please text your email and password in textfields."
  35. delegate:nil
  36. cancelButtonTitle:@"Try again"
  37. otherButtonTitles:nil];
  38. [errorEmptyField show];
  39. } if([status isEqualToString:@"0"]) {
  40. errorEmptyField = [[UIAlertView alloc] initWithTitle:@"Invalid"
  41. message:@"Invalid email or password"
  42. delegate:nil
  43. cancelButtonTitle:@"Try again"
  44. otherButtonTitles:nil];
  45. [errorEmptyField show];
  46. }
  47.  
  48. }

Использую СТОРИБОАРДЫ,  и использовать метод ПРИПЭЙР ФО СЕГУЕ не получается)

как туда данные передать пока не в курсе, думаю)

Пишу с мака, чтобы копировать код, а английский зараза переключаться отказывается)

0
405
0