PHP算出剩余时间输出

查询出商品id为3的数据并算出剩余时间输出

    image.png

    (1)在index.php页面,使用 PDO 方式,链接操作 MySQL 数据库。

    (2)查询出商品id[g_id]为3的所有数据 

    (3)用PDO对象的fetch()方法从结果集中获取数据赋值给变量$result

    (4)将$result数组内 商品名称赋值给变量$g_name

    (5)计算出该商品剩余秒杀时间分别赋予变量 $days(天),$hours(小时) ,

             $mins(分钟),$secs (秒)

    (6)输出内容:

              "<p>{$g_name},剩余{$days}天{$hours}小时{$mins}分钟{$secs}秒</p>";

               例:1000元秒杀格力空调,剩余0天10小时30分钟30秒

 

         用户表[seckill]说明:

                id                          秒id,

                g_id                      商品id,                    

                g_name                商品名称,                      

                num                      库存数量,                        

                start_time             秒杀开启时间,

                end_time              秒杀结束时间,

                create_time          创建时间,

      注:可能用到的函数 ,intval() 函数用于获取变量的整数值。

我的代码:

<!DOCTYPE html>
<html>
  <head>
    <title></title>
    <meta charset="UTF-8">
    <style type="text/css">

    p{
        width: 400px;
        height: 50px;
        line-height: 50px;
        font-size: 18px;
        background: #E91E63;
        text-align: center;
        color: #fff;
    }
    </style>
  </head>
  <body>

<?php 
/**********************************************************************
 * 输出的内容:
 * 
 * (1) "<p>{$g_name},剩余{$days}天{$hours}小时{$mins}分钟{$secs}秒</p>"
 * 
 ***********************************************************************/
 
//$url,$user,$pwd是自动生成的数据库相关信息,不能修改
//连接数据库时不需要写端口号
$url = "mysql:host=mysql;dbname=database_25523_19_91552";//数据库ip和库名
$user = "25523_19_91552";//数据库用户
$pwd = "f33ba6ab0a7982b51052f2a520070009";//数据库密码
    
$sql="select id[g_id]=3 from seckill";
$conn=new PDO($url,$user,$pwd);
$result=$conn->query($sql)->fetch();

  
  $secs = t % 60;//秒
  $mins = Math.floor(t/60);//分
  $hours = Math.floor(minute/60);//时
  $mins = mins>=60?mins%60:mins;//分钟不得大于60


 

echo "<p>{$g_name},剩余{$days}天{$hours}小时{$mins}分钟{$secs}秒</p>";

?>
  </body>
</html>

人家秒杀是计算结束时间和当前时间差多少,你这个题是计算结束时间和开始 ,坑。。

<!DOCTYPE html>
<html>
  <head>
    <title></title>
    <meta charset="UTF-8">
    <style type="text/css">

    p{
        width: 400px;
        height: 50px;
        line-height: 50px;
        font-size: 18px;
        background: #E91E63;
        text-align: center;
        color: #fff;
    }
    </style>
  </head>
  <body>

<?php 
/**********************************************************************
 * 输出的内容:
 * 
 * (1) "<p>{$g_name},剩余{$days}天{$hours}小时{$mins}分钟{$secs}秒</p>"
 * 
 ***********************************************************************/



//$url,$user,$pwd是自动生成的数据库相关信息,不能修改
//连接数据库时不需要写端口号
$url = "mysql:host=mysql;dbname=database_25523_19_91552";//数据库ip和库名
$user = "25523_19_91552";//数据库用户
$pwd = "f33ba6ab0a7982b51052f2a520070009";//数据库密码
    
$sql="select * from seckill where g_id=3";
$conn=new PDO($url,$user,$pwd);
$result=$conn->query($sql)->fetch();
$g_name=$result['g_name'];

//date_default_timezone_set('Asia/Shanghai'); //设置为东八区上海时间
$now = time();
$d=$result['end_time'];
$secs=$result['end_time']-$result['start_time'];;


$days=intval($secs/3600/24);

$secs-=$days*3600*24;

$hours=intval($secs/3600);
$secs-=$hours*3600;

$mins=intval($secs/60);
$secs-=$mins*60;


 

echo "<p>{$g_name},剩余{$days}天{$hours}小时{$mins}分钟{$secs}秒</p>";
?> 
  </body>
</html>