2

我无法解析发送到 php web 服务的数据。我正在使用以下代码来获取 json:

$decoded = json_decode(file_get_contents('php://input'));
if(is_null($decoded) == NULL)
    {
        $body = "Data was not successfully received";
        $body = $body . "      " . $jsonInput;
    }

json 是从 iOS 应用程序发送的,如下所示:

{
  "water" : "YES",
  "int_clean" : "YES",
  "ceiling_stains" : "YES",
  "additional_comments" : "not entered",
  "roof_cond" : "YES",
  "e_clean" : "YES",
  "interior_cond" : "not entered",
  "no_exp" : "not entered",
  "addr" : "YES",
  "roof_leak" : "YES",
  "doors_sec" : "YES",
  "elec" : "YES",
  "ceiling_exp" : "not entered",
  "repaired" : "YES",
  "o_desc" : "not entered",
  "w_sign" : "YES",
  "o_cond" : "not entered",
  "int_cond" : "YES",
  "gas" : "YES",
  "for_sale_sign" : "YES",
  "sold_as_is" : "YES",
  "mb_sign" : "YES",
  "graffiti" : "YES",
  "date" : "18-12-2012 18:58",
  "dewinterized" : "YES",
  "HVAC" : "YES",
  "why_no_mat" : "not entered",
  "is_lockbox" : "YES",
  "financing_mat" : "YES",
  "yard_cond" : "YES",
  "marketing_mat" : "YES",
  "HVAC_missing" : "not entered",
  "agent_info" : "YES",
  "e_cond" : "YES",
  "e_key" : "YES",
  "pool_sec" : "YES",
  "pool_clean" : "YES"
}

并使用以下代码发送:

 NSDictionary * info = [NSDictionary dictionaryWithObjects:values forKeys:keys];
NSData* jsonData = [NSJSONSerialization dataWithJSONObject:info options:NSJSONWritingPrettyPrinted error:&error];

NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://uofi-bars.com/sendEmail.php"]];
[req addValue:@"Content-Type: application/json" forHTTPHeaderField: @"Content-Type"];
[req setHTTPMethod:@"POST"];
[req setHTTPBody:jsonData];


[NSURLConnection sendSynchronousRequest:req returningResponse:&response error:&error];

我对php完全陌生,这让我头疼了很长一段时间。任何帮助,将不胜感激!

4

1 回答 1

1

这是不正确的if(is_null($decoded) == NULL)PHP is_null返回一个boolean值。所以你需要使用if(is_null($decoded) === FALSE)or if(is_null($decoded) === TRUE)

于 2012-12-19T01:22:22.863 回答