通过PHP将MySQL记录发送到iOS

时间:2012-05-30 08:29:49

标签: php mysql ios http nsurlconnection

大家。

我正在使用通过PHP连接到MySQL的iOS应用程序。

我希望我的应用程序发送PHP GET请求并从MySQL数据库中选择一些数据,但我不知道如何将MySQL上的数据发送到iOS。这是我的代码。

myDataGetter.m

//create a request and connect (url is my PHP file's)
NSURLRequest* getRequest = [NSURLRequest requestWithURL:url];
NSURLConnection* connection = [NSURLConnection connectionWithRequest:getRequest      
                                                            delegate:self];
if (connection) {
    //data received from PHP will be stored in receivedData
    receivedData = [[NSMutableData alloc] init];
} else {
    //error
}

在myDataGetter.m中,我设置了NSURLConnection的委托方法。例如,

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    [receivedData setLength:0]
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [receivedData appendData:data];
}

在我的PHP文件中

$con = mysql_connect ('host', 'user', 'pass');
mysql_select_db ('dbname', $con);

$rows = mysql_query ("SELECT name, age, email FROM table");
while ($row = mysql_fetch_array ($rows)) {
    $name = $row["name"];
    $age = $row["age"];
    $email = $row["email"];
}

在此示例中,我想向iOS发送$ name,$ age和$ email。如果你知道怎么做,请帮助我。

谢谢。

1 个答案:

答案 0 :(得分:0)

我总是使用ASIHTTPRequest进行此类工作。它比NSURLConnection框架更强大。

其次,我会使用PHP在JSON中对结果进行编码,然后使用非常好的适用于iOS的SBJson框架将请求的结果简单地放入NSDictionary或NSMutableArray中。

http://allseeing-i.com/ASIHTTPRequest/Setup-instructions

http://stig.github.com/json-framework/

JSON encode MySQL results