Estoy convirtiendo una serie de NSDictionaries de datos JSON con la siguiente ...conversión de NSArray -> JSON -> NSData -> servidor PHP -> representación JSON
Crear mis datos ...
NSMutableArray *arrayOfDicts = [[NSMutableArray alloc] init];
for (int i = 0; i < 2; i++) {
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
@"MySong", @"title",
@"MyArtist", @"artist",
nil];
[arrayOfDicts addObject:dict];
}
NSArray *info = [NSArray arrayWithArray:arrayOfDicts];
NSData* jsonData = [NSJSONSerialization dataWithJSONObject:info
options:NSJSONWritingPrettyPrinted error:&error];
continuación, enviar al igual que ...
NSURL *url = [NSURL URLWithString:@"http://www.mywebsite.com/index.php"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:jsonData forKey:@"songs"];
[request setDelegate:self];
request.tag = TAG_LOAD_SONGS;
[request startAsynchronous];
Este es el envío de la NSData a mi servidor, pero ¿cómo puedo entonces lo usan en php ... es realmente sólo un montón de números aleatorios si lo imprimo desde mi servidor, y te he probado cantar json_encode pero no creo que eso signifique para datos sin procesar ...
¡Cualquier ayuda sería genial!
EDIT: Aquí es la respuesta de php ...
echo $_POST['songs'];
<5b0a2020 7b0a2020 20202274 69746c65 22203a20 224d7953 6f6e6722 2c0a2020 20202261 72746973 7422203a 20224d79 41727469 7374220a 20207d2c 0a20207b 0a202020 20227469 746c6522 203a2022 4d79536f 6e67222c 0a202020 20226172 74697374 22203a20 224d7941 72746973 74220a20 207d0a5d>
Aquí está la respuesta a NSLoging en Xcode ...
NSLog(@"Info: %@", info);
Información: ( { artista = MyArtist ; title = MySong; }, { artist = MyArtist; title = MySong; } )
¿Qué aspecto tiene la cadena que recibe en PHP? – deceze
Bueno, eso ciertamente no es JSON. Parece un problema en la forma en que envías los datos, no uno con PHP. – deceze
así que no puedo descifrar qué está mal entonces? Editaré mi pregunta con la forma en que creo mi objeto ... – Eric