mysql - 当字符串包含空格时,应用程序仍未更新数据库

标签 mysql ios database spaces

慢慢地,但肯定地,我觉得我要疯了。在解决我的问题并且应用程序现在也接受空格后,它仍然不会将包含空格的数据添加到我的 mysql 数据库中。这是代码:

NSString *strURL = [NSString stringWithFormat:@"http://www.bbc.com/phpFile.php?number=%@&name=%@&lastname=%@", number, firstName, lastName];
NSString *webStringURl = [strURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]];
NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];

NSLog(@"%@", strResult);
NSLog(@"%@", webStringURl);

NSLog 甚至告诉我它完全按照我告诉他的去做:

ProjectX[4003:15203] http://www.bbc.com/phpFile.php?number=11166&name=Yong%20Wang%20Ding&lastname=Blamblam

每当变量不包含空格时它都有效。当我在浏览器中打开 php 文件并手动输入变量(带空格)时,它会将它们添加到我的数据库中。我不知道为什么它在对我的应用执行完全(?)相同的操作时拒绝工作。

最佳答案

除了最后的 NSLog 语句之外,您似乎没有在其他任何地方使用 webStringURl(原文如此)。你确定你不是故意写的吗:

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:webStringURl];

...第三行?

目前,您正在对未转义版本的 URL(可能仍包含空格)调用 dataWithContentsOfURL。

关于mysql - 当字符串包含空格时,应用程序仍未更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9197074/

相关文章:

sql - 从一个表中获取行,并从相关表中获取 COUNT

php - 在 with 函数的子查询中使用 Eloquent 模型属性

mysql - 在其他表中按 id 对 count 和 fetch name 进行排序查询

android - 可以将我的网站包装在 Flutter webview 中吗

database - 如何将数据库附加到 Heroku 中的应用程序?

database - mac 存储 sqlite3 数据库的默认位置是什么

我的查询的 mysql 查询错误

MySQL WHERE 子句 - 年龄大于/小于

iphone - 在 xcode 4.2 中声明自定义 UINavigationController

ios - 适用于越狱iOS设备的应用程序: Consistent background operation