ユーザー名とパスワードをデータベースに投稿したいと思います。次のコードでは、2 つの textField であるユーザー インターフェイスから userName とパスワードを取得し、ログイン ボタンをクリックすると、URL を呼び出すと想定しています。しかし、どういうわけかSQLに投稿していません。反対に、ユーザー名とパスワードを使用してブラウザーに URL をコピー アンド ペーストするだけで、受け入れられてデータベースに投稿されます。私は自分の問題を見つけることができませんでした。
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize userName;
@synthesize password;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)loginClick:(id)sender {
NSString *post = [NSString stringWithFormat:@"&userName=%@&Password=%@",userName.text,password.text];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
NSString *str=[NSString stringWithFormat:@"1sikayet.com/getsettt.php?%@", post];
NSURL *urlbody=[NSURL URLWithString:str];
NSLog(@"%@",str);
[request setURL:urlbody];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Current-Type"];
[request setHTTPBody:postData];
NSURLConnection *conn = [[NSURLConnection alloc]initWithRequest:request delegate:self];
if(conn)
{
NSLog(@"Connection Successful");
}
else
{
NSLog(@"Connection could not be made");
}
}
-(BOOL)textFieldShouldReturn:(UITextField *)theTextField
{
if(theTextField==self.userName)
{
[theTextField resignFirstResponder];
}
if(theTextField==self.password)
{
[theTextField resignFirstResponder];
}
return YES;
}
@end
getsettt.php
$hostname = "sikayet.db.XXXX.com";
$username = "sikayet";
$dbname = "sikayet";
//These variable values need to be changed by you before deploying
$password = "Hidden"
$usertable = "sikayetUp";
?>
//Connecting to your database
mysql_connect($hostname, $username, $password) OR DIE ("Unable to
connect to database! Please try again later.");
mysql_select_db($dbname);
//Fetching from your database table.
$query = "INSERT into $usertable values('null','".$userName."','".$login."')";
$result = mysql_query($query);
echo $userName.",".$login;
?>