gpt4 book ai didi

php - 使用 PHP 在 Swift 中接收 POST

转载 作者:行者123 更新时间:2023-11-30 13:55:12 24 4
gpt4 key购买 nike

早上好,

我尝试使用 Swift 及其调用的 .php 文件通过 PHP 文件发送变量 (id_post),但“id_post”为空,因为当我打印“id_post”的值时,它始终为空。

你知道为什么会发生这种情况吗? 1 个月前,我在另一个项目中使用了相同的功能,并且可以正常工作,而这里则不能。我错过了什么吗?

我还测试了“postString”值,它总是正确的(id_post=64)。

这是我的 Swift 代码:

func requestPost () {

let request = NSMutableURLRequest(URL: NSURL(string: "http://www.website.com/post.php")!)
request.HTTPMethod = "POST"
let postString = "id_post="+id_post

request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
data, response, error in

if error != nil {
return
}

let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)!
print("post: \(responseString)")

self.posts = self.parseJsonData(data!)

// Reload table view
dispatch_async(dispatch_get_main_queue(), {
self.tableView.reloadData()
})
}
task.resume()
}

这是我的 PHP 代码:

$dbhost="localhost";
$dbusuario="dbuser";
$dbpassword="dbpassword";
$db="db";
$conexion = mysql_connect($dbhost, $dbusuario, $dbpassword);
mysql_select_db($db, $conexion);
mysql_query("SET NAMES 'utf8'");

$id_post=$_POST['id_post'];

$return_arr = array();

$fetch = mysql_query("SELECT * FROM posts WHERE id=$id_post");
while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC))
{
$row_array['id'] = $row['id'];

$row_array['image'] = $row['image'];

array_push($return_arr,$row_array);
}

echo '{"post": '.json_encode($return_arr).'}';

提前致谢,

问候。

最佳答案

我唯一需要更改的是将“http://www.website.com ”更改为“http://website.com ”。我不知道为什么它不起作用,但如果有人遇到同样奇怪的问题,我会发布解决方案。

问候,

关于php - 使用 PHP 在 Swift 中接收 POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33718764/

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