私は、目的のCでNSURLRequestクラスを使用してSQLクエリを渡す際に非常に奇妙な問題があります。正しいコンテンツ(JSONフォーマットされた)。ObjCでNSURLRequestを使用してURLでSQLクエリを送信
NSString *URLWithSQLQuery = [NSString stringWithString:@"http://localhost/querydatabase.php?query=INSERT+INTO+Table+(ID,Column1,Column2,Column3,Column4,Column5,Column6,Column7,Column8)+VALUES+(NULL,'a','b','','c','d','','1','2')"];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:URLWithSQLQuery]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *data = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
NSLog(@"%@", data);
これは、テーブルにダミー値を挿入しない: はここに私のコードです。 次のコードは、適切なコンテンツを返します。
NSString *URLWithSQLQuery = [NSString stringWithString:@"http://localhost/querydatabase.php?query=SELECT+*+FROM+Table"];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:URLWithSQLQuery]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *data = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
NSLog(@"%@", data);
をそして、私は私のブラウザにURL http://localhost/querydatabase.php?query=INSERT+INTO+Table+(ID,Column1,Column2,Column3,Column4,Column5,Column6,Column7,Column8)+VALUES+(NULL,'a','b','','c','d','','1','2')を貼り付けると、クエリが正常に実行されます。だから私は実際にPHPスクリプトやURLWithSQLQuery
から来ていないので、問題がどこから来ているのか分からず、Objective Cのコードから来ていません。
ご迷惑をおかけして申し訳ございません。あなたの助けに感謝します。
スコット
私のURL文字列はフォーマットの文字列であり、スペースを含む他の文字列を使用していましたが、それらを '+'で置き換える必要があります。とにかく、ありがとう。 – califrench
うん、やってはいけない。 – bryanmac
私はそれを変更して、URLの代わりにPOSTメソッドを使用しています – califrench