[英]iOS no communication between iPhone app and MySQL database via PHP
我需要帮助来弄清楚为什么我的iPhone应用程序无法与PHP通信。 我有一个文本字段,用户可以在其中输入消息,并且有一个按钮可以告诉应用程序何时输入了文本,需要将其发布到mySQL数据库中。
我的PHP和iOS代码粘贴在下面,但是我在这里还包括一些调试语句。
我在if([serverOutput...)
行if([serverOutput...)
,到那时我得到了以下内容:
alertsuccess UIAlertView * 0x00000000 dataURL NSData * 0x00000000 messageString __NSCFString * 0x0685e7a0 @"hi" serverOutput __NSCFConstantString * 0x00b75a7c url NSURL * 0x06869540 @"http://www.mysite.com/connect.php?message=hi"
从调试断点开始,我希望serverOutput会说“ OK”,但它为空,这意味着它未与我的PHP连接。 感谢您的帮助,以解决此问题。
<?php
// Connecting, selecting database
$link = mysql_connect("localhost", "user", "password")
or die('Could not connect: ' . mysql_error());
mysql_select_db("mydb") or die('Could not select database');
// Performing SQL query
$query = "INSERT INTO messages (message,date) VALUES ('$_GET["message"]',NOW())";
$result = mysql_query($query) or die('Query failed: ' . mysql_error());
echo "OK";
// Free resultset
mysql_free_result($result);
// Closing connection
mysql_close($link);
?>
iPhone代码
- (IBAction)postmessage:(id)sender {
self.message = self.messageField.text;
NSString *messageString = self.message;
UIAlertView *alertsuccess;
//construct an URL for your script, containing the encoded text for parameter value
NSURL* url = [NSURL URLWithString:
[NSString stringWithFormat:
@"http://www.mysite.com/connect.php?message=%@",messageString]];
NSData *dataURL = [NSData dataWithContentsOfURL:url];
NSString *serverOutput = [[NSString alloc] initWithData:dataURL encoding: NSASCIIStringEncoding];
if([serverOutput isEqualToString:@"OK"]) {
alertsuccess = [[UIAlertView alloc] initWithTitle:@"Posted" message:@"Done"
delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
} else {
alertsuccess = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Done"
delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
}
[alertsuccess show];
}
错误在这里$query = "INSERT INTO messages (message,date) VALUES ('$_GET["message"]',NOW())";
应该
$query = "INSERT INTO messages (message,date) VALUES ('" . $_GET["message"] . "', NOW())";
要么
$query = "INSERT INTO messages (message,date) VALUES ('${_GET["message"]}', NOW())";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.