私はここで非常に混乱しています。基本的に、Blueホストサーバー上の.phpファイルに文字列をアップロードするiOSアプリがあります。
-(IBAction)plus{
if (counter>=0 && counter<240) {
counter=counter+1;
count.text = [NSString stringWithFormat:@"%i",counter];
NSString* myString = [NSString stringWithFormat:@"%d",counter];
NSString *receipt1 = @"This should work?";
NSString *post =[NSString stringWithFormat:@"receipt=%@",receipt1];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding
allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL
URLWithString:@"http://www.ryanmediaworks.com/validation.php"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-
Type"];
[request setHTTPBody:postData];
NSHTTPURLResponse* urlResponse = nil;
NSError *error = [[NSError alloc] init];
NSData *responseData = [NSURLConnection sendSynchronousRequest:request
returningResponse:&urlResponse error:&error];
NSString *result = [[NSString alloc] initWithData:responseData
encoding:NSUTF8StringEncoding];
NSLog(@"Response Code: %d", [urlResponse statusCode]);
if ([urlResponse statusCode] >= 200 && [urlResponse statusCode] < 600)
{
NSLog(@"Response: %@", result);
}
}
}
これが私の.phpファイルです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>I hope this works!</title>
</head>
<body>
<?php
if(_POST)
{
if($_POST['receipt'] == 'This should work?')
{
echo "post successfull";
}
else
{
echo "not post";
}
}
?>
</body>
</html>
これが奇妙な部分です...これは私のブラウザにあるものです:
<head>
<title>I hope this works!</title>
</head>
<body>
not post</body>
</html>
しかし、ここにXcodeの出力があります:
<head>
<title>I hope this works!</title>
</head>
<body>
post successfull</body>
</html>
'if'ステートメントはxcodeで機能しますが、ブラウザでは機能しないようです。つまり、正しい文字列が.phpにアップロードされるため、「postsucessfull」というフレーズが返されます。しかし、ブラウザで表示したときにフレーズが存在しませんか?
私はこれについて何か助けてくれて本当にありがたいです!