【发布时间】:2013-11-26 23:38:59
【问题描述】:
$result 始终返回 true,即使没有传递给 SQL 查询的参数。
其他都很好,我已经在数据库中测试过了。
<?php
require('dbConnection.php');
$lon = $_POST['lon'];
$lat = $_POST['lat'];
$time = $_POST['time'];
$date = $_POST['date'];
$eTime = $_POST['eTime'];
$eDate = $date;
$orderID = $_POST['orderID'];
if($db_found){
$query = "UPDATE `PostmanLocation`
SET `longitude`= '$lon',`latitude`= '$lat',`time`= '$time', `date`='$date'
WHERE `postID`= '$name'";
$result=0;
$result = mysql_query($query) or die("MySQL error:".mysql_error());
echo $result;
if($result==1){
$query = "
UPDATE `Order`
SET `eTime`= '$eTime',`eDate`= '$eDate'
WHERE `orderID` = 'orderID'";
$result=0;
$result = mysql_query($query);
echo $result;
if($result == 1){
$response["success"] = 1;
} else{
$response["success"] =0;
}
}else{
$response["success"] = 0;
}
echo json_encode($response);
}
?>
【问题讨论】:
-
如果您的意思是查询中的某些变量不存在这没什么大不了的,空白字符串将被发送到数据库,因此不会出现错误。您应该使用
isset()或类似的东西来测试数据是否存在。 -
如果向数据库发送空白字符串,表格日期是否会更新为空白?
-
应该是这样。传递的空白字符串将覆盖那些行/列中已经存在的内容。
-
我认为如果输入变量没有数据,更新会失败。或者如果连空字符串都可以更新,我怎么知道更新是否成功?
-
我的数据库中没有用空白字符串输入覆盖。
标签: php mysql return-value