Array / Dict Xcode MySQL için PHP JSON

0 Cevap php

Bu beni deli ediyor. Bu kadar basit görünüyor, ve ben muhtemelen belirgin bir şey eksik - ve güçlü benim PHP / MySQL becerileri eksiktir çünkü bu şüpheli, ama işe alınamıyor. Ben başka bir yerde sert baktı (ve çalıntı) sorunu çözmeye çalışırken StackOverflow dan kod parçacıkları bir dizi, ama ben hala çalışma var ettik ikna değilim var.

PHP POST yöntemi kullanılarak - Xcode itibaren ben dinamik olarak (biliyorum, biliyorum, ideal, tek bir düzleştirilmiş bir nesne gibi) mysql de diziyi saklayabilir, böylece (json çerçevesini kullanarak) JSON içine NSDictionary nesneyi kodlamak için çalışıyorum.

Kod aşağıda. Ben json OK oluşturabilirsiniz. Tamam bağlayabilirsiniz, ben dizi değişkenleri öyle & değişkenleri değiştirebilirsiniz ben hemen her şey yapabilirsiniz, json ile göndermek olması gerekmez. Ben json geçmek ve mysql saklamak için görünmüyor olabilir.

Bir çaylak evet-im.

Thx ...

Ben bu kadar var:

in xcode

NSDictionary *loginDict = [NSDictionary dictionaryWithObjectsAndKeys:
                                @"aname", @"username",
                                @"hello", @"password", 
                                nil];   


    NSString *jsonString = [loginDict JSONRepresentation];
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
    NSString *post = [NSString stringWithFormat:@"json=%@", jsonString];
    NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:NO];

    [request setURL:[NSURL URLWithString:@"http://domain.com/post_dict.php"]];
    [request setHTTPMethod:@"POST"];

    [request setHTTPBody:postData];

    [[NSURLConnection alloc] initWithRequest:request delegate:self];

at post_dict.php

<?php

$rawJsonData = $_POST['json'];
$decodedData = json_decode($rawJsonData); //do i even need to decode if i want to store a flattened json object in mysql?


//Connect To Database
$hostname='**BLACKEDOUT**.com';
$username='**BLACKEDOUT**';
$password='**BLACKEDOUT**';
$dbname='**BLACKEDOUT**';
$usertable='users';
//I want to update the Records field with the array
$recordsfield = 'Records';


mysql_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.');
mysql_select_db($dbname);


$query = "UPDATE $usertable SET $recordsfield = '$decodedData' ";//do i encode? serialize? dunno

$result = mysql_query($query);


  if(!$result)
    {
      mysql_close();
      echo mysql_error();
      return;
    }

  mysql_close();


?>

0 Cevap