我是PHP的新手。我开始了一个网站,产品竞标项目,我坚持这件事.. 我想存储将新产品添加到页面的实际日期和时间,以及24小时后的另一个日期和时间(截止日期)。 我在adauga_admin.php页面(将产品详细信息添加到mysql表的页面)中完成了此操作。
adauga_admin.php:
<?php
include('connect.php');
$data=date('Y-m-d H:i:s');
$deadline=date('Y-m-d H:i:s',strtotime('+24 hours'));
// protejam impotriva injectiei de cod
$t = mysqli_real_escape_string($con, $_POST['t']);
$s = mysqli_real_escape_string($con, $_POST['s']);
$p = mysqli_real_escape_string($con, $_POST['p']);
$d = mysqli_real_escape_string($con, $_POST['d']);
$sql="INSERT INTO produse (titlu, stare, pret, descriere, data, deadline)
VALUES ('$t', '$s', '$p', '$d', '$data', '$deadline')";
$rez = mysqli_query($con,$sql);
if($rez) {
header("location:produse_user.php");
}
else {
echo "Probleme la adaugare";
}
mysqli_close($con);
?>
这是包含产品的表格:
id | titlu | stare | pret | descriere | data | deadline |
___________________________________________________________________________________
11 | asd | asd | 140 | asd | 2014-06-03 19:02:47 | 2014-06-04 19:02:47 |
这是我向用户展示产品的地方。从这里他们可以竞标产品
produse_user.php:
<?php
include('connect.php');
?>
<?php
$result = mysqli_query($con,"select * from produse");
while ($row = mysqli_fetch_array($result))
{
?>
<div class="produse">
<div class="produse-header">
<h4><?php echo $row['titlu'];?></h4>
<h5><?php echo $row['stare'];?></h5>
</div>
<div class="produse-continut">
<textarea readonly><?php echo $row['descriere'];?></textarea>
</div>
<div class="produse-pret">
<p><?php echo $row['pret'];?> lei</p>
</div>
<div class="produse-buton">
<a href="liciteaza.php?id=<?php echo $row['id']; ?>">Liciteaza</a>
</div></div>
<?php
}
mysqli_close($con);
?>
我的目标是制作一个脚本,显示在每个产品的产品页面上,如果仍然可用或已过期。 我想这是这样的,但不知道该怎么做..
if ($data > $deadline) {
echo "Expired";
}
else {
echo "Available";
}
答案 0 :(得分:2)
您可以使用以下查询或变体。
select * from produse WHERE deadline >= NOW()
从结果集中排除截止日期已经过去的行。
你也可以做像
这样的事情select * from produse WHERE deadline >= NOW() - INTERVAL 2 HOUR
AND deadline < NOW()
显示两小时前和现在截止日期之前的产品。
答案 1 :(得分:0)
试试这个:
<?php
include('connect.php');
?>
<?php
$data = date('Y-m-d H:i:s');
$status = "";
$result = mysqli_query($con,"select * from produse");
while ($row = mysqli_fetch_array($result))
{
if ($data > $row['deadline']) {
$status = "Expired";
} else {
$status = "Available";
}
?>
<div class="produse">
<div class="produse-header">
<h4><?php echo $row['titlu'];?></h4>
<h5><?php echo $row['stare'];?></h5>
<h5><?php echo $status;?></h5>
</div>
<div class="produse-continut">
<textarea readonly><?php echo $row['descriere'];?></textarea>
</div>
<div class="produse-pret">
<p><?php echo $row['pret'];?> lei</p>
</div>
<div class="produse-buton">
<a href="liciteaza.php?id=<?php echo $row['id']; ?>">Liciteaza</a>
</div></div>
<?php
}
mysqli_close($con);
?>