Mysql 如果任务开始日期早于3天,如何获取任务详细信息?

Mysql 如果任务开始日期早于3天,如何获取任务详细信息?,mysql,sql,Mysql,Sql,我想要mysqli查询中任务开始日期早于3天的所有记录 这就是我使用mysqli查询所尝试的: $sql_task = "SELECT * FROM task where task_assignee='" . $user_result['id']."' WHERE task_start_date > DATE_SUB(NOW(), INTERVAL 5 DAY)"; $result_task_dropdown = mysqli_query($conn, $sql_task);

我想要mysqli查询中任务开始日期早于3天的所有记录

这就是我使用mysqli查询所尝试的:

$sql_task = "SELECT * FROM task where task_assignee='" .  $user_result['id']."' WHERE task_start_date > DATE_SUB(NOW(), INTERVAL 5 DAY)";
$result_task_dropdown = mysqli_query($conn, $sql_task);     
echo mysqli_error($conn);
$rows_task_dropdown=mysqli_num_rows($result_task_dropdown);             
$task_dr_result = mysqli_fetch_array($rows_task_dropdown,MYSQLI_ASSOC);
这是我的任务表结构

CREATE TABLE `task` (
  `task_id` int(11) NOT NULL,
  `task_name` varchar(255) NOT NULL,
  `task_description` text NOT NULL,
  `task_assignee` varchar(255) NOT NULL,
  `task_start_date` date NOT NULL,
  `task_due_date` date NOT NULL,
  `task_priority` varchar(50) NOT NULL,
  `task_status` varchar(40) NOT NULL,
  `task_remarks` text NOT NULL,
  `location` varchar(200) NOT NULL,
  `delete_status` tinyint(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
$sql\u task=“从任务中选择*,其中任务的受让人=”$用户结果['id']。“'和任务开始日期<日期子(现在(),间隔3天)”;

希望这能对您有所帮助。

$user\u result['id']是否来自用户输入?如果是这样,此代码将具有SQL注入漏洞。查找参数绑定来解决这个问题——幸运的是MySQLi驱动程序支持这个问题。
$sql_task = "SELECT * FROM task where task_assignee='" .  $user_result['id']."' and task_start_date < DATE_SUB(NOW(), INTERVAL 3 DAY)";