[英]iOS inserting JSON to MySQL
我正在尝试使用 JSON 格式将数据插入 MySQL,但它不起作用。 数据没有插入到数据库中。 你能告诉我我做错了什么吗? 这是我的 PHP 文件:
<?php
$con = mysql_connect("http://mydomain", "dbUserName", "password");
if(!$con)
{
die('Connect fail', mysql_error());
}
mysql_select_db("dbName", $con);
if(isset($_REQUEST['data']))
{
$json = $_REQUEST['data'];
$data = json_decode($json);
mysql_query("INSERT INTO tbAccount
(AccFullName, AccAboutMe)
VALUES ('$data->AccFullName', '$data->AccAboutMe')");
}
$con->exec($mysql_query);
echo "New record created successfully";
mysql_close($con);?>
并在 obj-c 中的 app 中实现 .m:
- (IBAction)insert:(id)sender;{NSMutableString *postString = [NSMutableString stringWithString:kPostURL];
NSString *jsonString = [[NSString alloc] initWithFormat:@"{\"AccFullName\":\"%@\", \"AccAboutMe\":\"%@\"}", self.name.text, aboutMe.text];
[postString appendString:[NSString stringWithFormat:@"?data=%@", jsonString]];
[postString setString:[postString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:postString]];
[request setHTTPMethod:@"POST"];
postConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
NSLog(@"Post string %@", postString);}
对您的数据进行 Base64 编码,然后尝试提交到 MySql,也许您有任何特定字符。
NSString *plainString = @"Any text ..... bla bla bla";
NSData *plainData = [plainString dataUsingEncoding:NSUTF8StringEncoding];
NSString *base64String = [plainData base64EncodedStringWithOptions:0];
NSLog(@"%@", base64String);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.