所以我在一个简单的网站上工作,但遇到了问题。我有一个基于订阅的网站,并且他们的订阅结束的日期已经过期。这一切都很好,但是当我尝试显示到期日期时,我遇到了问题。前3行是我一直在尝试的。好像时间戳没有从数据库正确传输,因为当我在按钮上进行测试时,这显示了正确的日期。前三行总是给我这个:1970/01/01
// Get Expiration Date
// Always gives me 1970/01/01
$datexpire = "SELECT date-expire FROM users WHERE username='{$_SESSION['username']}'";
$timestamp = mysqli_query($link, $datexpire);
$date = date("Y/m/d",$timestamp);
//This works
$timestamp2 = 1537847863;
$date2 = date("Y/m/d",$timestamp2);
如果有人可以提供帮助,将不胜感激
答案 0 :(得分:0)
我认为您的代码应类似于
$datexpire = "SELECT date-expire FROM users WHERE username='{$_SESSION['username']}'";
$result = mysqli_query($link, $datexpire);
$row=mysqli_fetch_assoc($result));
$timestamp = $row['date_expire'];
$date = date("Y/m/d", $timestamp);
echo $date;
请检查列名称..如果它是date-expire或date_expire ??? (破折号或下划线??)
答案 1 :(得分:0)
mysqli_query
返回一个mysqli_result
对象或一个布尔值。
您想从给定的对象中获取一行,就像这样:
$datexpire = "SELECT `date-expire` FROM users WHERE username='{$_SESSION['username']}'";
$result = mysqli_query($link, $datexpire);
$row = mysqli_fetch_assoc($result);
$date = date("Y/m/d", $row["date-expire"]);