好的,所以我有这个程序应该通过 Web 服务器进行通信(PHP 脚本)
我有这种方法,我想为一个表获取一个随机 id。这个 NSURLconnection 的返回数据应该是表中的行数。
我第一次调用它时,它就像随机变量一样没有设置,但我第二次运行它时,它确实设置了。
变量设置:
@implementation ViewController {
NSMutableData *randomData;
int randomid;
}
这是我的 IBaction 按钮:
- (IBAction)initVits:(id)sender {
[self randomID];
NSLog(@"Random ID: %d", randomid);
}
第一次输出为:Random ID: 0,第二次输出:Random ID: a valid id
随机编号:
- (void) randomID {
NSString *url = @"http://ivitserdk.porkhost.dk/ivitserdk.php?function=randomid";
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:1.0];
connectionRandomID = [[NSURLConnection alloc] initWithRequest:request delegate:self];
randomData = [NSMutableData data];
[connectionRandomID start];
}
连接确实完成了加载:
if(connection == connectionRandomID) {
NSString *String = [[NSString alloc] initWithData:randomData encoding:NSUTF8StringEncoding];
NSLog(@"Return: %@", String);
int temp = [String integerValue];
NSLog(@"temp: %d", temp);
randomid = (arc4random() % temp) + 1;
NSLog(@"Random: %d", randomid);
randomData = nil;
connectionRandomID = nil;
}
输出适用于所有时间:返回:(表中的行数) temp:(表中的行数为 int) Random:(随机数)
就像第一次没有设置随机变量一样。
谢谢你的时间!