通过php将坐标数组发布到数据库

通过php将坐标数组发布到数据库,php,mysql,arrays,coordinates,Php,Mysql,Arrays,Coordinates,我有一个应用程序,我可以将数据发布到数据库并检索它,我发布了一个坐标数组,我从中收集了用户位置的移动,例如 "37.351701,-122.105898", "37.351945,-122.106109", "37.352183,-122.106338", "37.352409,-122.106568" 如果数组有大约180行,它不会被发布到数据库中,或者如果我跟踪从中收集坐标的用户超过3分钟,也不会被添加。我很难理解为什么会这样,我可以手动添加300行坐标,我可以从NSLog中提取到数据库并

我有一个应用程序,我可以将数据发布到数据库并检索它,我发布了一个坐标数组,我从中收集了用户位置的移动,例如

"37.351701,-122.105898",
"37.351945,-122.106109",
"37.352183,-122.106338",
"37.352409,-122.106568"
如果数组有大约180行,它不会被发布到数据库中,或者如果我跟踪从中收集坐标的用户超过3分钟,也不会被添加。我很难理解为什么会这样,我可以手动添加300行坐标,我可以从NSLog中提取到数据库并检索它,但不能通过php从xcode发布它

我如何创建坐标数组

if ((oldLocation.coordinate.latitude != newLocation.coordinate.latitude) &&
        (oldLocation.coordinate.longitude != newLocation.coordinate.longitude))

    self.trackCoord = [NSString stringWithFormat:@"%f,%f",newLocation.coordinate.latitude, newLocation.coordinate.longitude];

        if (!self.trackArray) {
        self.trackArray = [[NSMutableArray alloc] init];
    }
    [self.trackArray addObject:self.trackCoord];
我用这个来发布数组

-(void) shareRoute:(NSString*) to withName:(NSString *) from withName:(NSString *) name withName:(NSString *) type withName:(NSString *) duration withName:(NSMutableArray *) trackArrayList{

if (from != nil && to != nil && name != nil){

    NSMutableString *postString = [NSMutableString stringWithString:shareURL];

    [postString appendString:[NSString stringWithFormat:@"?%@=%@", Sfrom, from]];
    [postString appendString:[NSString stringWithFormat:@"&%@=%@", Sto, to]];
    [postString appendString:[NSString stringWithFormat:@"&%@=%@", Sname, name]];
    [postString appendString:[NSString stringWithFormat:@"&%@=%@", Stype, type]];
    [postString appendString:[NSString stringWithFormat:@"&%@=%@", Sduration, duration]];
    [postString appendString:[NSString stringWithFormat:@"&%@=%@", StrackArray, trackArrayList]];

    [postString setString:[postString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:postString]];
    [request setHTTPMethod:@"POST"];

    postConnection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];        
}

}
还有这个

- (IBAction)shareButton:(id)sender{

    [self shareRoute:toLabel.text withName:fromLabel.text withName:routeNameTextField.text withName:typeLabel.text withName:durationLabel.text withName:trackArray];
    [toLabel resignFirstResponder];
    toLabel.text = nil;
    fromLabel.text = nil;
    routeNameTextField.text = nil;
    typeLabel.text = nil;
    durationLabel.text = nil;
    trackArray = nil;
    [[NSNotificationCenter defaultCenter] postNotificationName:@"Test1" object:self];

}

}
php代码

$name = $_GET["name"];
$from = $_GET["from"];
$to = $_GET["to"];
$type = $_GET["type"];
$duration = $_GET["duration"];
$trackArray = $_GET["trackArray"];


$query = "INSERT INTO routes VALUES ('', '".mysql_real_escape_string($name)."', '".mysql_real_escape_string($from)."', '".mysql_real_escape_string($to)."', '$type', '$duration', '$trackArray')";
在数据库中,我尝试使用
TEXT
MEDIUMTEXT
值作为
trackArray
。 MySQL表

CREATE TABLE IF NOT EXISTS `routes` (
`routeID` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`from` varchar(255) NOT NULL,
`to` varchar(255) NOT NULL,
`type` varchar(255) NOT NULL,
`duration` varchar(255) NOT NULL,
`trackArray` MEDIUMTEXT NOT NULL,
PRIMARY KEY (`routeID`)
);
所有其他数据都已成功发布,Im也发布了具有多行和多个数据的其他阵列,但使用上面的示例无法显示


你知道为什么没有添加多行数组吗?

你要插入的表的类型结构是什么?@CianGallagher用表更新了这个问题你检查过PHP文件中的变量了吗?可能是xcode没有正确地传递它,或者根本没有。尝试回显变量,或将其写入日志文件。@CianGallagher我将php设置为写入.txt文件,值150行,但超过200行的.txt文件为空,因此我猜问题在于xcode将数组传递过来,数组正常工作,因为我可以显示它的NSLog。有什么想法吗?