Php 如何在xcode Obj c中将textfield值引入其他viewController?

Php 如何在xcode Obj c中将textfield值引入其他viewController?,php,ios,mysql,objective-c,xcode,Php,Ios,Mysql,Objective C,Xcode,我在PHP MySQL数据库和PHP代码中有这个email='abc'和pw='123'值,如下所示 login2.php <?php $connect = mysqli_connect("localhost","","",""); if(isset($_POST['email'])) { $email = $_POST['email']; $pw = $_POST['pw']; $sql = "SELECT * FROM table WHERE emai

我在PHP MySQL数据库和PHP代码中有这个email='abc'pw='123'值,如下所示

login2.php

<?php
$connect = mysqli_connect("localhost","","","");
if(isset($_POST['email'])) {
    $email = $_POST['email'];
    $pw    = $_POST['pw'];
    $sql   = "SELECT * FROM table WHERE email='$email' AND pw=md5('$pw')";
    $get   = mysqli_query($connect,$sql);

    if($get && mysqli_num_rows($get) > 0) {
        while($row = mysqli_fetch_assoc($get)) {
            $email_db = $row['email'];
            $pw_db    = $row['pw'];             
            echo '{"success":1}';
            exit();
        }
        mysqli_free_result($get);
    } else {
        echo '{"success":0}';
        echo mysqli_error($connect);
        exit();
    }
}
?>

我想在xcode中实现的是将success值放入另一个名为HomepageVC的ViewController中,并在单击loginbutton操作时显示该值

现在我只能在同一个ViewController页面上查看textfield值。我不知道如何将输入值传输到另一个ViewController。Obj c代码如下所示

ViewController.m

@synthesize displayL,passL,email,pw;

- (IBAction)loginbutton:(id)sender
{    
    @try {

        if([[email text] isEqualToString:@""] || [[pw text] isEqualToString:@""] ) {
            [self alertFailed:@"Please enter both Username and Password" :@"Login Failed!"];
        }
        else {
            NSString *post =[[NSString alloc] initWithFormat:@"email=%@&pw=%@",[email text],[pw text]];
            NSLog(@"PostData: %@",post);
            NSURL *url=[NSURL URLWithString:@"http://localhost/login2.php"];
            NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
            NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

            NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
            [request setURL:url];
            [request setHTTPMethod:@"POST"];
            [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
            [request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
            [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
            [request setHTTPBody:postData];

            NSError *error = [[NSError alloc] init];
            NSHTTPURLResponse *response = nil;
            NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
            NSLog(@"Response code: %d", [response statusCode]);
            if ([response statusCode] >=200 && [response statusCode] <300)
            {
                NSString *responseData = [[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding];
                NSLog(@"Response ==> %@", responseData);
                SBJsonParser *jsonParser = [SBJsonParser new];
                NSDictionary *jsonData = (NSDictionary *) [jsonParser objectWithString:responseData error:nil];
                NSLog(@"%@",jsonData);
                NSInteger success = [(NSNumber *) [jsonData objectForKey:@"success"] integerValue];
                NSLog(@"%d",success);
                if(success == 1)
                {
                    NSLog(@"Login SUCCESS");
                    [self alertStatus:@"Logged in Successfully." :@"Login Success!"];
                    NSString * input  = email.text;
                    NSString * input2 = pw.text;
                    displayL.text = input;
                    passL.text = input2;

                } else {
                    NSString *error_msg = (NSString *) [jsonData objectForKey:@"error_message"];
                    [self alertFailed:error_msg :@"Login failed"];
                }
            } else {
                if (error) NSLog(@"Error: %@", error);
                [self alertFailed:@"Connection Failed" :@"Login Failed!"];
            }
        }
    }
    @catch (NSException * e) {
        NSLog(@"Exception: %@", e);
        [self alertStatus:@"Login Failed." :@"Login Failed!"];
    }
}
@syntheticdisplayl,passL,email,pw;
-(iAction)登录按钮:(id)发件人
{    
@试一试{
如果([[email text]IsequalString:@”“][[pw text]IsequalString:@”“])){
[自我提醒失败:@“请同时输入用户名和密码”:@“登录失败!”;
}
否则{
NSString*post=[[NSString alloc]initWithFormat:@“email=%@&pw=%@”,[email text],[pw text]];
NSLog(@“PostData:%@”,post);
NSURL*url=[NSURL URLWithString:@”http://localhost/login2.php"];
NSData*postData=[post数据使用编码:NSASCIIStringEncoding allowLossyConversion:是];
NSString*postLength=[NSString stringWithFormat:@“%d”,[postData长度]];
NSMutableURLRequest*请求=[[NSMutableURLRequest alloc]init];
[请求设置url:url];
[请求设置HttpMethod:@“POST”];
[请求设置值:HttpHeaderField的postLength:@“内容长度”];
[请求设置值:@“应用程序/json”用于HttpHeaderField:@“接受”];
[请求设置值:@“应用程序/x-www-form-urlencoded”forHTTPHeaderField:@“内容类型”];
[请求setHTTPBody:postData];
NSError*error=[[NSError alloc]init];
NSHTTPURLResponse*响应=nil;
NSData*urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&响应错误:&错误];
NSLog(@“响应代码:%d”,[Response statusCode]);

如果([response statusCode]>=200&&[response statusCode]如果要使用从
currentViewController
nextViewController
的文本字段值,可以使用
NSUserDefaults

将文本字段值存储在一个字符串中。例如
Txtfldstring

Txtfldstring= [NSString stringWithFormat:@"%@",_yourTextField.text];
然后按如下方式存储该文本字段值:

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
// saving an NSString

[prefs setObject:Txtfldstring forKey:@"abc"];
在nextViewController或任何其他控制器中使用此值,如以下方式

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
// getting an NSString
NSString *s = [prefs stringForKey:@"abc"];
NSLog(@“%@",s);

自从我上次使用Objective-C已经有好几个月了,因为我现在是一个敏捷的用户。无论如何,在两个ViewController之间传递数据是不需要动脑筋的。你可以通过Segues或在pushViewController之前传递数据。请参阅此处的更多详细信息:感谢提供信息:)..您希望在下一个视图控制器中传递什么?在第一个视图中从用户输入的任何文本字段值controller@AlotJai看我的答案,兄弟,希望它能帮助你:)