更新mysql_query不更新表

时间:2013-02-25 13:20:27

标签: php mysql

我遇到UPDATE命令问题。

我试图更新我的数据库,但它没有发生。我一直试图让这个工作在过去的10天里工作,这让我疯狂。

以下是代码:

$a = mysql_query("UPDATE `findacab` SET `lat` = ".$ads['Latitude']." , `long` = ".$ads['Longitude']."
                WHERE `eeventendtime` = ".$ads['Postcode']."  ");

表:

$q = mysql_query("SELECT Postcode, Latitude, Longitude FROM postcodes");
while($ads = mysql_fetch_array($q)) 
{ 
    mysql_query("UPDATE findacab SET lat = '".$ads['Latitude']."' , long = '".$ads['Longitude']."' WHERE eeventendtime = '".$ads['Postcode']."' ");
    echo $ads['Latitude']." ".$ads['Longitude']." ".$ads['Postcode']."</br>";
     //$query = "select count(*) from findacab where eeventendtime = '".mysql_real_escape_string($ads['Postcode'])."'"; 
}

2 个答案:

答案 0 :(得分:1)

除非您的完整表只包含整数,否则您应该在字符串周围添加引号

$a = mysql_query("UPDATE `findacab` SET 
    `lat` = '".$ads['Latitude']."' , 
    `long` = '".$ads['Longitude']."' 
    WHERE 
    `eeventendtime` = '".$ads['Postcode']."' ");

答案 1 :(得分:0)

$query = "select count(*) from findacab where eeventendtime = '".mysql_real_escape_string($ads['Postcode'])."'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
echo $row[0]

如果它返回0,那么您就没有要更新的记录。 另一个可能的原因 - 您尝试使用与存储的值相同的值更新表。在这种情况下,更新不会更改数据。