В настоящее время я использую php для подключения таблиц в моей базе данных ms sql, чтобы появиться на моей веб-странице. Тем не менее, таблица имеет проблемы с полями даты, которые являются нулевыми в моей таблице sql.Cant echo date null field
Стол представляет собой ремонт гаража для транспортных средств.
create table [VEHICLE_STATUS](
[STATUS_ID] [int] identity (1,1) not null,
[VEHICLE_ID] [INT] not null,
[REPAIR_START_DATE] [DATE] not null,
[REPAIR_END_DATE] [DATE] not null,
[DESCRIPTION] [nvarchar] (200) not null
);
Однако не все транспортные средства для ремонта, поэтому не имеют даты начала и окончания ремонта.
Я попытался изменить поле даты, чтобы изменить «доступный» вместо нулевой
Ошибка, которая приходит есть;
Fatal error: Call to a member function format() on null in C:\xampp\htdocs\view.php on line 57
<?php
$server = "\SQLEXPRESS";
$options = array("Database"=>"test");
$conn = sqlsrv_connect($server, $options);
if(!$conn) die(print_r(sqlsrv_errors(), true));
$query = "select * from VW_VEHICLE_STATUS";
$sql = sqlsrv_query($conn, $query);
echo "<table >";
echo "<tr>";
echo "<td style='border:1px solid black;Font-size=18;Font-weight=bold'>";
echo "MAKE";
echo "</td>";
echo "<td style='border:1px solid black;Font-size=18;Font-Weight=bold'>";
echo "MODEL";
echo "</td>";
echo "<td style='border:1px solid black;Font-size=18;Font-Weight=bold'>";
echo "REGISTRATION";
echo "</td>";
echo "<td style='border:1px solid black;Font-size=18;Font-Weight=bold'>";
echo "REPAIR_START_DATE";
echo "</td>";
echo "<td style='border:1px solid black;Font-size=18;Font-Weight=bold'>";
echo "REPAIR_END_DATE";
echo "</td>";
echo "<td style='border:1px solid black;Font-size=18;Font-Weight=bold'>";
echo "DESCRIPTION";
echo "</td>";
echo "</tr>\n";
while ($row = sqlsrv_fetch_array($sql))
{
echo "<tr>";
echo "<td style='border:1px solid black'>";
echo $row['MAKE'];
echo "</td>";
echo "<td style='border:1px solid black'>";
echo $row['MODEL'];
echo "</td>";
echo "<td style='border:1px solid black'>";
echo $row['REGISTRATION'];
echo "</td>";
echo "<td style='border:1px solid black'>";
echo $row['REPAIR_START_DATE']->format("Y-M-d");
echo "</td>";
echo "<td style='border:1px solid black'>";
echo $row['REPAIR_END_DATE']->format("Y-M-d"); ;
echo "</td>";
echo "<td style='border:1px solid black'>";
echo $row['DESCRIPTION'];
echo "</td>";
echo "</tr>\n";
}
echo "</table>";
sqlsrv_close($conn);
?>
Какой смысл показывать некоторые sql, когда ваше сообщение об ошибке является ошибкой PHP? «Эй, доктор, я сломал ногу, и он повсюду брызгает кровью и осколками костей. Вот фотография моей машины, чтобы вы могли понять, как исправить меня». –
@ Джейн - вам нужно рассмотреть возможность размещения вашего PHP-кода в этой строке, показанной на ошибка и метка это PHP для лучших ответов – techspider
Наиболее вероятной проблемой может быть не проверка нулей перед использованием формата даты столбца – techspider