У меня есть таблица записей. Пользователю разрешено вводить данные в зависимости от даты события. Таблица становится чем-то вроде этого:PHP MSSQL еженедельное событие
ID Date Name Hrs
1 2016-03-01 Username 8
2 2016-03-02 Username 8
3 2016-03-03 Username 9
4 2016-03-04 Username 10
…
31 2016-03-31 Username 8
- Я хочу, чтобы иметь возможность отображать дату (даже без записей), что пользователь не вошел.
Я также хочу показать все записи в таблице, разбивая их на несколько недель. Что-то вроде этого:
Day Date Name Hrs
Mon 2016-03-01 Username 8 Tue 2016-03-02 Username 8 Wed 2016-03-03 Username 9 Thu 2016-03-04 Username 10 Fri 2016-03-05 Username 10 Sat 2016-03-06 - Sun 2016-03-07 Username 10 Mon 2016-03-08 Username 8 Tue 2016-03-09 - Wed 2016-03-10 - Thu 2016-03-11 - Fri 2016-03-12 Username 10 Sat 2016-03-13 - Sun 2016-03-15 Username 10 ... ... ... Mon 2016-03-30 Username 8 Tue 2016-03-31 Username 8
Ниже мой код:
<?php
...Connection to DB...
$query="SELECT *
FROM Table_I
ORDER BY DATEPART(wk,date) as wk
";
$params = array($_REQUEST['query']);
$results = sqlsrv_query($conn, $query, array(), array("Scrollable" => 'static'));
if($results===false)
{ die(FormatErrors(sqlsrv_errors())); }
$rows = sqlsrv_num_rows($results);
$array = array();
while ($row = sqlsrv_fetch_array($results, SQLSRV_FETCH_ASSOC))
{
$array[] = $row;
}
?>
<html>
<head></head>
<body>
<table border="1">
<?php
for($a=0; $a<$rows; $a++)
{
echo '<tr><td>'.$array[$a]['wk'].'</td>';
echo '<td>'.date("l", strtotime($array[$a]['date'])).'</td>';
echo '<td>'.date('d M Y', strtotime(strip_tags($array[$a]['date']))). "</td>";
echo '<td>'.strip_tags($array[$a]['name'])."</td>";
echo '<td>'.strip_tags($array[$a]['hrs'])."</td>";
}
</body>
</html>
Он печатает хорошо, но не включает в себя даты пользователь не войти и не разбить его каждую неделю. Я очень новичок в программировании, но это весело.
Пожалуйста, помогите с благодарностью.
какая версия SQL-Server вы используете? – FLICKER
@FLICKER Sql-server 2008 – user
@ Пошлите, пожалуйста, пожалуйста? – user