gpt4 book ai didi

iphone - 使用 NSURLRequest 将数据发布到服务器时出现问题

转载 作者:可可西里 更新时间:2023-11-01 15:04:28 34 4
gpt4 key购买 nike

我创建了一个 NSURLRequest 来将我在 iPhone 应用程序中的数据发布到服务器以继续执行 PHP 脚本。我的 PHP 脚本如下所示。

<?php
$name = $_POST['name'];
$email = $_POST['email'];

$link = mysql_connect("localhost", "fffasfdas","Nfdsafafs") or die ("Unable to connect to database.");
mysql_select_db("muradsbi_mydatabase") or die ("Unable to select database.");

$sqlstatement= "INSERT INTO dbname (name,email) VALUES ('$name','$email')";
$newquery = mysql_query($sqlstatement, $link);
echo 'thanks for your register';
?>

我的 NSURLRequst 的创建方式如下。

NSString *myRequestString = @"&name=Hello%20World&email=Ohai2u";
NSData *myRequestData = [NSData dataWithBytes: [myRequestString UTF8String] length: [myRequestString length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString: @"http://www.google.com/"]];
[request setHTTPMethod: @"POST"];
[request setHTTPBody: myRequestData];
NSData *returnData = [NSURLConnection sendSynchronousRequest: request returningResponse: nil error: nil];

然而,这个站点无法从这个应用程序获取数据并将其保存到数据库,但我知道它已成功连接,因为我的应用程序能够从服务器获取响应数据。我不知道是我的变量名声明方式错误还是其他问题。我该如何解决?

最佳答案

您应该删除 myRequestString 中的前导 &,问题很可能是未发送正确的 content-type header 。尝试添加一个调用

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"content-type"];

你也不应该为错误传递 nil,这样你就可以看到客户端认为发生了什么。

无关,但您的 PHP 代码对 SQL injection attacks 开放.

关于iphone - 使用 NSURLRequest 将数据发布到服务器时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/330060/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com