Использовать веб-сервис PHP в приложении для iPhone

Я разработал веб-сервис на PHP. Он использует базу данных MySQL. В этом я использовал JSON. Я хочу получить данные из этого веб-сервиса в своем приложении для iPhone. Я использовал функцию с одним параметром. Как я могу использовать это в iPhone?

Веб-сервис:

<?php

echo getdata($_REQUEST['lastupdate']);

function getdata($lastupdatedate){

    $json = '{"foo-bar": 12345}';



    $obj = json_decode($json);

    //print $obj->{'foo-bar'}; // 12345



    $con = mysql_connect("localhost","un","pwd");



    if (!$con)



    {



    die('Could not connect: ' . mysql_error());



    }

    //print_r($con);



    mysql_select_db("roster", $con);







    $query = "select * from rates where LastUpdated = '".$lastupdatedate."' order by LastUpdated limit 1";

    $rs = mysql_query($query) or die($query);

    //print_r($rs);

    while($row=mysql_fetch_assoc($rs)){

    $record[] = $row;

    }



    $data = json_encode($record);



    header('Cache-Control: no-cache, must-revalidate');

    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');

    header('Content-type: application/json');

    return $data;

}

?>

Я запрашиваю URL: http://domain/t1.php?lastupdate=2012-09-01 01:00:00.


person Curious_k.shree    schedule 01.10.2012    source источник


Ответы (1)


Вы должны создать запрос для http://domain/t1.php?lastupdate=2012-09-01 01:00:00, а затем проанализировать свой ответ JSON.

В зависимости от того, как должен функционировать ваш код (при загрузке или в зависимости от действий пользователя), ваш код должен функционировать аналогично этому примеру из raywenderlich.com

Основные фрагменты кода:

- (void)viewDidLoad
{
    [super viewDidLoad];

    dispatch_async(kBgQueue, ^{
        NSData* data = [NSData dataWithContentsOfURL:yourURLValue];
        [self performSelectorOnMainThread:@selector(fetchedData:) 
          withObject:data waitUntilDone:YES];
    });
}

- (void)fetchedData:(NSData *)responseData {
    //parse out the json data
    NSError* error;
    NSDictionary* json = [NSJSONSerialization 
        JSONObjectWithData:responseData //1

        options:kNilOptions 
        error:&error];

    NSArray* JSONResultValues = [json objectForKey:@"yourKey"]; //2

    NSLog(@"Results: %@", JSONResultValues); //3
}
person propstm    schedule 01.10.2012
comment
Я не могу понять, в URL-ссылке, что я должен передать? мой URL-адрес: domain/t1.php?lastupdate=2012-09-01 01:00:00, где 2012-09-01 01:00:00 — мой входной параметр - person Curious_k.shree; 01.10.2012
comment
NSString *myvalue = @2012-09-01 01:00:00; NSURL *yourURLValue = [[NSURL alloc] initWithString:[NSString stringWIthFormat: @domain/t1.php?lastupdate=%@,myValue]]; // Вы можете создавать разные URL-адреса, каждый из которых принимает соответствующее значение параметра. - person propstm; 01.10.2012
comment
сэр, когда я делаю NSLog(yourURLValue); - person Curious_k.shree; 03.10.2012