如何使用 php 将 mysql 列的子字符串插入到循环内的空列中?

How to insert sub string of a mysql column into empty columns within loop using php?

我有一个 phpMyadmin 数据库 table,最后三个 varchar 行:位置、纬度、经度

'Location' 具有我使用子字符串分隔并分配给变量的纬度和经度数字。我试图将这些变量插入到 table 命名的最后两行中:'lat' 和 'long.

这是我的(没有显示任何错误):

问题:不在 'lat' 和 'long'

中插入任何内容
if($result = $db->query("SELECT * FROM eStore")){
if($count = $result->num_rows){ 


echo "All available data: ";
while($row = $result->fetch_object()){ 
echo $row->Location, '<br/>' , '<br/><br/>';
        $long = substr($row->Location, -36, -20); // works
        $lat = substr($row->Location, -18, -1); //works
        $db->query("INSERT INTO eStore (lat, long) VALUES ('$lat', '$long')"); // does not work
    }
    $result->free();
}
}

数据库结构:

已修复: 将 name long 更改为其他名称。我没有意识到 long 是一个保留关键字。谢谢@RightClick

更改您的查询以更新该行,而不是插入只有 2 个值的新行。

$db->query("UPDATE eStore SET lat='$lat', long='$long' WHERE Location='".$row->Location."' ");

此查询可以更新多行的经纬度值(如果它们恰好具有相同的位置)。我认为这不是问题,因为纬度和经度值是从中得出的。如果有问题,你需要另一列作为id