Php 在两个日期之间更新MYSQL数据库

Php 在两个日期之间更新MYSQL数据库,php,mysql,wordpress,sql-update,Php,Mysql,Wordpress,Sql Update,我很难做到这一点,我需要更新数据库中的一个表,更改两个日期之间的所有记录的一个字段,并具有特定的用户名 日期值正在从表单传递到脚本 我所拥有的: mysql_query(" UPDATE data SET status='Submitted' WHERE (user_name = '$current_user->user_login') AND labor_date >= '$_POST[start]' AND labor_date &

我很难做到这一点,我需要更新数据库中的一个表,更改两个日期之间的所有记录的一个字段,并具有特定的用户名

日期值正在从表单传递到脚本

我所拥有的:

mysql_query("
    UPDATE data 
    SET status='Submitted' 
    WHERE (user_name = '$current_user->user_login') 
    AND labor_date >= '$_POST[start]' 
    AND labor_date <= '$_POST[end]'")
mysql\u查询(“
更新数据
设置状态为“已提交”
其中(user\u name='$current\u user->user\u login')
和人工日期>='$'发布[开始]'

和人工日期确保您的日期符合以下格式:

yyyy-mm-dd
您还可以检查mysql\u infected\u rows()以查看查询是否成功运行,但没有找到符合条件的行

您可能还希望将字符串构建为一个变量,如$sql=“…”

这将允许您出于调试目的对其进行回显

*您确实意识到mysql_u2;是一个不推荐使用的库,很快就会从PHP中完全删除?此时您应该使用mysqli或PDO*

哦,是的,关于带关键点的数组插值的一点提示:

AND labor_date >= '{$_POST['start']}' 

您是否有任何错误消息/日志?请提供更多信息。此外,请提供有关日期格式的信息。这可能是一个原因,因为您的查询乍一看很好。类似于
1950-01-25
的格式应该可以工作。当您编写日期来自表单时,还应注意SQL注入攻击。呃ror消息、示例数据、表结构?听说过SQL注入?$\u POST[开始]、$\u POST[结束]它们的格式是否正确^应该以引号开头和结尾吗?使用MYSQL BETWEEN而不是>=我同意@ewein的评论,我会使用BETWEEN语法,但是这不是问题的原因——只是一个更干净的替代方法。