Когато ползването направи формуляр за моя уебсайт за дата, която все още не е налице в базата данни, той получава нещо като 1 януари 1970 г.
<?php echo date("D j, M Y", strtotime($row["DATE"])); ?>
как да се даде "все още не е на разположение вместо на 1, януари 1970 година
Отговори:
2 за отговор № 1Да се възползват от IF
if ($row["DATE"] != "" || $row["DATE"] != "0000-00-00")
{
echo date("D j, M Y", strtotime($row["DATE"]));
}
else
{
echo "not yet available";
}
0 за отговор № 2
Стойността, върната от mysql, зависи от колонатаdatatype ако имате datetime или timestamp връщаната стойност ще бъде 0000-00-00 00:00:00 и ако имате дата тогава стойността ще бъде 0000-00-00. Опитайте да използвате това
if ($row["DATE"] != "" || $row["DATE"] != "0000-00-00" || $row["DATE"] != "0000-00-00 00:00:00" )
{
echo date("D j, M Y", strtotime($row["DATE"]));
}
else
{
echo "not yet available";
}
Можете да съкратите израза if, ако знаете как стойността, съхранявана в базата данни, когато датата не е предоставена.
0 за отговор № 3
strtotime
връща FALSE или -1 (зависи от коя версия на PHP се изпълнява) Просто проверете за този случай.
$date = strtotime($ROW["DATE"]);
// need to change this next line depending on PHP version!
if ($date === false || $date == -1) {
print "Not yet available";
} else {
print date("D j, M Y", $date);
}