1

MySQL 告诉我语法错误,但我不知道在哪里。谁能帮我?

$dt = $xml->item->parameter[2];
$to = date('Y-m-d H:i:s',strtotime($dt));
$query = sprintf("select * from me,val where group_id=%s AND m_id= me_id AND time_stamp <= $to",mysql_real_escape_string($gid));
$result= mysql_query($query) or die(mysql_error());

while ($row=mysql_fetch_array($result)){

解析为日期有效。提前致谢。

错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“23:59:59”附近使用正确的语法

4

2 回答 2

3

您必须将日期 ( $to) 放在单引号中:

"select * from me,val where group_id=%s AND m_id= me_id AND time_stamp <= '$to'"

为了避免这些(以及许多其他)问题,您可能需要考虑使用准备好的语句(看看PDOmysqli)而不是旧的(和不推荐使用的)mysql_*函数。

于 2012-07-10T10:08:01.950 回答
1
$query = sprintf("select * from me,val where group_id=%s AND m_id= me_id AND time_stamp <= '$to'",mysql_real_escape_string($gid));

或者

$query = sprintf("select * from me,val where group_id=%s AND m_id= me_id AND time_stamp <= %s",mysql_real_escape_string($gid),$to);

你应该date用单引号括起来

于 2012-07-10T10:09:14.943 回答