0

こんにちは、mysql データベースにデータを挿入しようとしています。保存をクリックするたびに新しいコンテンツを取得しますが、データベースの列はテキストを取得しません(テキストビューとテキストフィールドから)。

    -(IBAction)save:(id)sender{    
    NSString *rawStr = [NSString stringWithFormat:@"location=%@",address.text,@"&long=%@",longitude.text,@"&lat=%@",lat.text,@"&texten=%@",texten.text];

    NSData *data = [rawStr dataUsingEncoding:NSUTF8StringEncoding];

    NSURL *url = [NSURL URLWithString:@"http://url.info/projct/phpFile.php"];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];

    [request setHTTPMethod:@"POST"];
    [request setHTTPBody:data];

    NSURLResponse *response;
    NSError *err;
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
    NSLog(@"responseData: %@", responseData);

    [self dismissViewControllerAnimated:YES completion:nil];
}

Webブラウザでデータベースにデータを挿入すると機能します。

4

1 に答える 1

0

これがフォーム エンコードされたデータであることを示すためにリクエスト ヘッダーを設定しているようには見えません。これがないと、PHP は$_POSTスーパーグローバルを自動的に設定しません (また、POST されたデータは URL に反映されません)。php://input実際にデータを取得しているかどうかを確認したい場合があります。

次のようにできます。

$query_string = file_get_contents('php://input');
var_dump($query_string);
于 2013-07-23T16:19:09.947 に答える