0

我正在尝试将我的 DeviceToken 移动到我的数据库中,这是我尝试过的:

我的 AppDelegate 中有代码:

-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    NSString *token = [[deviceToken description] stringByTrimmingCharactersInSet: [NSCharacterSet characterSetWithCharactersInString:@"<>"]];
    token = [token stringByReplacingOccurrencesOfString:@" " withString:@""];
    NSLog(@"content---%@", token);
    NSURL * url = [NSURL URLWithString:@"http://example.co.uk/push/push.php"];
    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
    [request setPostValue:token forKey:@"token"]; 
}

对于 www.example.co.uk/push/push.php 我有 php:

<?php
$con=mysqli_connect("localhost","xxx","yyy","zzzz");

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$sql="INSERT INTO active_users (device_token) VALUES ('$_POST[token]')";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
mysqli_close($con);
?>

我没有收到任何错误。但是我的数据库中没有出现任何内容。

我制作了一个表格发布到php,它工作正常。所以php没有问题。

由于ASIFormDataRequest没有错误,因此已正确导入。

但是我的数据库仍然没有收到任何信息?- 从字面上看,不仅仅是一个空单元格。这意味着 php 甚至没有被“请求”?

有谁知道这可能是为什么?

4

2 回答 2

1

尝试在代码末尾添加:

[request startSynchronous];

您正在创建请求,但没有发送它。如果您需要得到响应,请执行

NSError *error = [request error];
if (!error) {
NSString *response = [request responseString];
}
于 2014-06-09T12:21:50.627 回答
0

将您的查询更改为:

$sql="INSERT INTO active_users (device_token) VALUES ('".$_POST['token']."')";
于 2014-06-09T12:09:48.043 回答