-2

我有一个用户在他们最后一次注册时键入的 PHP 程序,他们需要每年更新,所以我想将它显示给管理员,以便在用户应该更新前 14 天查看。

结构如下:

join_date, members_name, members_address, members_telephone, members_email

我希望它们被显示,join_date格式为 yyyy/mm/dd

存储它的表称为customer_tbl.

到目前为止,这是我所尝试过的。

SELECT customers_tbl.join_date
FROM
customers_tbl
WHERE
'DATEADD(dd, -14, GETDATE())' = customers_tbl.join_date
ORDER BY
customers_tbl.join_date

所以对于这一切,我想要的是显示加入日期在 14 天后到期的人。

目前我什么都没有显示。

感谢任何看到这个并提供建议的人。

第二次尝试仍然没有

 <?php
 error_reporting(E_ALL); 
 ini_set("display_errors", 1); 

 include('includes/dbconn.php');
 $query = "SELECT * FROM `customers_tbl`
 WHERE (
    MONTH('join_date') = MONTH(CURDATE())
    AND DAY('join_date') = DAY(CURDATE())
  ) OR (
    MONTH('join_date') = MONTH(DATE_ADD(CURDATE(), INTERVAL -14 DAY))
    AND DAY('join_date') = DAY(DATE_ADD(CURDATE(), INTERVAL -14 DAY))
  ) OR (
    MONTH('join_date') = MONTH(DATE_ADD(CURDATE(), INTERVAL -28 DAY))
    AND DAY('join_date') = DAY(DATE_ADD(CURDATE(), INTERVAL -28 DAY))
  )";


   $result = mysql_query($query) or die(mysql_error());
   $num_result = mysql_num_rows($result);
   if($num_result > 0){

   echo $result['join_date'];   
   }

   echo $result['join_date'];   


?>
4

1 回答 1

1

我可以告诉你怎么做,但我不会为你编程,原因与 John Conde 解释的相同。

  • 构建一个数据库连接(我推荐使用 PDO)。
  • 初始化一个 sql 查询,它选择当前日期等于或大于(join_date + 1 年 - 14 天)的所有用户
  • 考虑添加一个名为 expire_date 的列,它会让您更容易检查,但是。您必须在插入用户时确定值。
  • 创建一个具有特定 id 的 div。
  • 使用 javascript(例如:jQuery 库)向您的后端(包含 pdo 数据库连接和查询的那个)执行 AJAX 请求。
  • 选择与您的搜索匹配的所有用户,并将其存储到 JSON 数组 ($jsonArray) 中,其中包含与您创建的查询匹配的所有用户。
  • 将 JSON 数组返回到 javascript (echo json_encode($jsonArray); & flush();)
  • 使用 json 数组中的数据构建一个表格,您将使用该表格显示在您创建的 div 中。

我可能会更具体,但如果您显示一些代码,我们可以讨论这一点。

于 2013-03-17T19:50:51.580 回答