Loko
Loko

Reputation: 195

umlauts from ios to php

i'm sending text from ios to php and save it in a sql database. but umlauts like "äöü" are saving as \344 etc.

i dont know what i can do ...

that are my steps:

in xcode:

        NSData *data = [[_textInput getText] dataUsingEncoding:NSNonLossyASCIIStringEncoding];
        NSString *goodValue = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

        NSString *post = [[NSString alloc] initWithFormat:@"&text=%@" goodValue];
        NSData * postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:NO];
        NSString * postLength = [NSString stringWithFormat:@"%d",[postData length]];
        NSMutableURLRequest * request = [[NSMutableURLRequest alloc] init];
        [request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://website.de/test.php"]]];
        [request setHTTPMethod:@"POST"];
        [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
        [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
        [request setHTTPBody:postData];
        NSURLConnection * conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];

in php:

$text = $_POST['text'];

$result = dbquery("INSERT INTO test (text) VALUES ('$text')");

it makes me angry -.-, how can i send umlauts from ios to php??

Upvotes: 1

Views: 222

Answers (1)

Kevin
Kevin

Reputation: 1506

You shouldn't use NSASCIIStringEncoding. Use NSUTF8StringEncoding instead.

NSData * postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:NO];

Upvotes: 2

Related Questions