PHP-SQL-DateTime未被提示

PHP-SQL-DateTime未被提示,php,mysql,datetime,Php,Mysql,Datetime,目标 根据输入的标记从数据库中的列回显datetime 数据库 代码 <?php include("config_new.php"); include("dbconnection.php"); $homepage = "index.php"; if(isset($_GET["token"])){ $token=mysqli_real_escape_string($conn,$_GET['token']); $expir

目标

根据输入的标记从数据库中的列回显datetime

数据库

代码

<?php
    include("config_new.php");
    include("dbconnection.php");

    $homepage = "index.php"; 

    if(isset($_GET["token"])){
        $token=mysqli_real_escape_string($conn,$_GET['token']);
        $expiryDate ="SELECT * from dateData WHERE token='$token'";
        $exDate=mysqli_query($conn,$expiryDate);
        if(mysqli_num_rows($exDate)>0){
            $tkDate=mysqli_fetch_assoc($exDate);
            $tokenDate=$tkDate['tokenDate'];
            //$expiryTokenDate=date("Y-m-d", strtotime(date("Y-m-d',strtotime($tokenDate). "+1 hour));
            echo $tokenDate;
            echo 'Hello';
        }
    }else{
        header("location:index.php");
        exit();
    }
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width,initial-scale=1">

        <title>FYP - Password Reset</title>

        <link href="res/css/stylish-portfolio.css" rel="stylesheet">
        <link href="res/css/style.css" rel="stylesheet">
    </head>
</html>
解释

  • 获取“token”后,使用SQL语句搜索任何包含
    $token
    变量的tokenDate

  • mysqli\u fetch\u assoc
    将通过获取结果行并将其设置为变量
    $tokenDate
    来运行

  • 到达后,DateTime()函数将其转换为PHP DateTime格式,并将其设置为变量
    $starttime

  • 之后,我将
    $starttime
    变量更改为所需的格式,即
    ('Y-m-d H:I:s')
    ,并将其设置为
    $expiryTokenDate
    ,并对其进行回显


  • 尝试将
    $starttime
    转换为PHP日期时间格式。然后使用$starttime并将其转换为('Y-m-dh:i:s')格式。

    我很难理解这个问题。我能从中得到的唯一一件事就是询问
    $\u get['token']
    应该是什么值。URL还是实际的令牌?你知道这些是什么,对吧?你知道代码并没有达到你的期望。如果输入了无效的令牌,它将不会重定向用户。它根本找不到匹配项,但仍然回显“hello”。只有在根本不存在令牌的情况下,您才重定向用户。您甚至连接到数据库了吗?有太多的事情开始变得不清楚了。看到你之前的问题,你也在使用JS吗?好吧,如果你愿意,你可以打我,再见!这一点也不清楚。请澄清您的问题并添加所有相关信息和代码。请记住,我们对您的应用程序/代码一无所知,无法看到您的屏幕。我们100%依赖你的解释。谢谢比尔,但我已经在我的问题中写下了解决方案,但我仍然会接受你的回答。
    if(isset($_GET["token"])){
    
    $token=mysqli_real_escape_string($conn,$_GET['token']);
    $sql=("SELECT tokenDate from pha_user WHERE token like '%$token%'");
    $sqltran=mysqli_query($conn,$sql) or die(mysqli_error($conn));
    $tokenDate= mysqli_fetch_assoc($sqltran);
    $starttime = new DateTime($tokenDate["tokenDate"]);
    
        $expiryTokenDate=$starttime->format('Y-m-d H:i:s');
        echo $expiryTokenDate;