Java Android-php-mysql查询
我从java获得一个字符串:2011-11-25 08:16:50 post_date列是时间戳 但是下面的查询没有给出任何结果。错误是什么Java Android-php-mysql查询,java,php,android,mysql,Java,Php,Android,Mysql,我从java获得一个字符串:2011-11-25 08:16:50 post_date列是时间戳 但是下面的查询没有给出任何结果。错误是什么 $date2 = $_POST['Date']; $result= mysql_query("Select * FROM (Select * FROM user WHERE latitude > $minLat AND latitude < $maxLat AND longitude > $minLon AND longitude &l
$date2 = $_POST['Date'];
$result= mysql_query("Select * FROM (Select * FROM user WHERE latitude > $minLat AND latitude < $maxLat AND longitude > $minLon AND longitude < $maxLon AND post_date > $date2 ORDER BY post_date DESC LIMIT $amount1) a ORDER BY post_id");
while($results = mysql_fetch_assoc($result))
$output[]=$results;
print(json_encode($output));
mysql_close();
您必须在MySQL中使用单引号日期。此外,由于您是直接从$\u POST获取它,建议您首先使用mysql\u real\u escape\u字符串对其进行转义
你能澄清一下是根本没有输出,还是一个空的JSON数组吗?无论哪种方式,您都没有进行任何错误检查。您需要在mysql\u查询调用之后执行此操作。否则,如果查询失败,脚本将中断。如何做到这一点已在或中概述。此外,您显示的代码易受攻击。使用适当的库卫生方法,如mysql\u real\u escape\u字符串,用于经典的mysql库,或者切换到PDO和prepared语句。请将查询编辑为$result=mysql\u querySelect*FROM Select*FROM Select*FROM用户,其中纬度>$minLat和纬度<$maxLat和经度>$minLon和经度<$maxLon和post\u date>$date2按post\u date描述的订单限制$amount1按post\u id或dieMsql\u错误;给我们一个错误,我认为这是mysqlduh的一个syntex错误…感谢很多人,这是引用…无论如何…是的,我知道sql注入再次感谢。
$result= mysql_query("
Select * FROM (
Select * FROM user
WHERE
latitude > $minLat
AND latitude < $maxLat
AND longitude > $minLon
AND longitude < $maxLon
-- Surround $date2 with quotes
AND post_date > '$date2'
ORDER BY post_date DESC LIMIT $amount1) a
ORDER BY post_id");