标记订单因特定日期而被锁定?困难局面

时间:2015-06-11 06:24:02

标签: php mysql

我一直试图决定创建以下功能的方法:

  1. 管理员选择日期
  2. 管理员点击锁定日期(选择所有日期订单和标记为已锁定)
  3. 现在的问题是,产品是在DAY而不是DATE上传的。

    1. 用户选择日(点击7个按钮之一)
    2. 订购日期
    3. 订单上传到Preorders表,其中包含所选的日期。 例如,ProductName,ProductImage,Qty(1),Price($ 15),Day(MON)

      如何选择特定日期,然后锁定该特定日期的所有订单?

      我所拥有的一个理论是,当用户选择产品并保存到表格中时,我应该在下一个日期上传,其中日期是所选日期。 但问题是它只能保存1天而不是所有未来的星期一。

      我有一个测试服务器上的网站,如果你想看看请问,我会给你访问。

      这是我保存到表脚本:

      <?php
      
      require '../core/init.php';
      
      
      
          $customerid = $_SESSION['customer_id'];
      
          $itemid = $_POST['itemid'];
      
          $itemName = $_POST['itemname'];
      
          $imageName = $_POST['imgname'];
      
          $qty = $_POST['qty'];
      
          $price = $_POST['pricetotal'] * $qty;
      
          $dayofweek = $_POST['dayofweek'];
      
          $add = DBPDO::getInstance()->insert('standardorder', array(
                      'customerId'    => $customerid,
                      'itemId'        => $itemid,
                      'itemName'      => $itemName,
                      'imageName'     => $imageName,
                      'qty'           => $qty,
                      'price'         => $price,
                      'dayOfWeek'     => $dayofweek
                  ));
      
      
      ?>
      

      请告诉我您需要哪些其他详细信息来帮助您了解情况。

      由于

1 个答案:

答案 0 :(得分:0)

好吧,据我所知,你想锁定在特定日期范围内创建的订单。显然,如果您的表中没有日期,则无法进行此操作。所以我建议您添加一个新列created_at(类型:日期),在其中保存订单的创建日期。

可以在插入时使用sql函数NOW()

填充该字段

现在您知道订单在哪个日期,您可以轻松选择特定范围。

WHERE (created_at BETWEEN '2010-01-30 14:15:55' AND '2010-09-29 10:15:55')

此外,您现在可以查询特定日期范围之间的所有订单,例如在星期一,

WHERE (created_at BETWEEN '2015-01-30 14:15:55' AND '2015-09-29 10:15:55')
AND dayOfWeek = "MON"