如何知道是否有過期產品?例如,如果您將某些產品的到期日期設定為 11-25-2022,那么到 11-22-2022 它被視為過期產品并且
它將計算被視為過期產品的行。
我知道我的查詢是錯誤的,因為我沒有指定列欄位
<?php
include('../connect.php');
$result = $db->prepare("SELECT * FROM rawprod");
$result->execute();
for($i=0; $row = $result->fetch(); $i ){
// code...
$date = date($row['expiry_date']);
$datenew=date_create("$date");
date_sub($datenew,date_interval_create_from_date_string("3 days"));
$expiringdate = date_format($datenew, "Y-m-d");
$date = date("Y-m-d");
$result = $db->prepare("SELECT * FROM rawprod where '$date' >= $expiringdate");
$result->execute();
$rowcountEXP = $result->rowcount();
}
?>
<div style="text-align:center;">
Expiring Raw Product: <font style="color:green; font:bold 22px 'Aleo';">[<?php echo $rowcountEXP; ?>]</font>
</div>
uj5u.com熱心網友回復:
您可以使用 DATE_SUB 在 mysql 查詢中呼叫日期比較。下面是一個帶有準備好的陳述句的 mysqli 示例。我假設您的資料庫連接存盤在變數 $db 中,并且有一列稱為產品。
<?php
include('../connect.php');
$today = date('Y-m-d');
$expiring_products = array();
$stmt = $db->prepare("SELECT `product` FROM `rawprod` WHERE DATE_SUB(`expiry_date`,INTERVAL 3 DAY) <= ?");
$stmt->bind_param("s", $today);
$stmt->execute();
$stmt -> bind_result($expiring_products);
foreach ($stmt->get_result() as $row)
{
$expiring_products[] = $row['product'];
}
mysqli_close($db);
?>
<div style="text-align:center;">
Expiring Raw Product: <font style="color:green; font:bold 22px 'Aleo';">
<?php
print count($expiring_products);
?>
</font></div>
uj5u.com熱心網友回復:
<?php
include('../connect.php');
$datetoday = date("Y-m-d");
$res = $db->prepare("SELECT * FROM rawprod WHERE '$datetoday' >=
DATE_SUB(expiry_date,INTERVAL 3 DAY)");
$res->execute();
$rowcount123 = $res->rowcount();
?>
多虧了你的想法,它現在可以作業了:>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/537807.html
標籤:PHP数据库日期验证
下一篇:TTK物體驗證問題
