сохранение длинного текста в веб-сервис php с iphone - PullRequest
0 голосов
/ 03 марта 2012

Я работаю над приложением, в котором мне нужно сохранить длинный текст в базу данных mysql, используя веб-сервис php.Я создал веб-сервисы, но не могу отправить параметр с iphone на веб-сервис php.Ниже приведен мой код для веб-службы:

<?php
require_once('config.php');
$username = $_POST["username"];
$aboutme = $_POST["aboutme"];

$conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die('Connection to database failed: ' . mysql_error());
mysql_select_db(DB_DATABASE) or die ('select_db failed!');
$query = "insert into Member(username, aboutMe) values(.'".$username."', '".$aboutme."')";
echo $query;
$result = mysql_query($query) or die(mysql_error());
echo $result;

mysql_close ($ con);

?>

Я нашел код для публикации данных на веб-службе, но яневозможно добавить данные в запрос публикации.

status = [NSString stringWithFormat: @ "username =% @ & password =% @ & заинтересованныхIn =% @ & aboutme =% @ & profilePic =% @ & isFBLogin =% @ & useFacebookPic =%@ "[@ "AAAAAAAAAA" stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@ "BBBBBB" stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@ "женский" stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@ "о meeeeeeeee" stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@" profile.png"stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@" 0 "stringByAddingPercentEscapesUsingEncoding: NSASCIIStringEncoding], [@" 0 "stringByAddingPercentEscapesUsingEncoding: NSASCI]:// status = @ "username = pankaj1234 & aboutme = Hello Baby 1234567890 0987654321";NSData * postData = [status dataUsingEncoding: NSUTF8StringEncoding allowLossyConversion: YES];NSData * postData = [status dataUsingEncoding: NSUTF8StringEncoding allowLossyConversion: YES];

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.domain.com/registerUser.php"]];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];

NSURLResponse *response;
NSError *error;
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(@"success!");

Как добавить эти значения в запрос?Может кто-нибудь, пожалуйста, помогите мне?

Спасибо
Pankaj

1 Ответ

1 голос
/ 03 марта 2012

Вы публикуете форму www, но не правильно кодируете данные.

Форма имеет следующий синтаксис: key=value&key=value где оба ключа / значения кодируются в URL.

Ваша закодированная строка ('status') должна быть закодирована следующим образом:

status=[NSString stringWithFormat:@"username=%@&aboutme=%@",[username stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding],[about stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding]];

Затем вы можете использовать оставшуюся часть кода, чтобы преобразовать ее в NSData и отправить на веб-службу.

...