PHP で次の構造のテーブルを作成する必要があるとします。で識別されるすべてのセルNamedayHour
は単なる指標です (毎日の場合は Mon0、Mon1 など)。その細胞に、日ごと、時間ごとに異なる情報を入れるべきです。
全体の構造は次のようになります。
<table border="1" >
<th>Hour</th>
<th>Mon 25-06-2012</th>
<th>Tue 26-06-2012</th>
<th>Wed 27-06-2012</th>
<th>Thu 28-06-2012</th>
<th>Fri 29-06-2012</th>
<tr><td>8:00</td><td>Mon0</td><td>Tue0</td><td>Wed0</td><td>Thu0</td><td>Fri0</tr>
<tr><td>8:20</td><td>Mon1</td><td>Tue1</td><td>Wed1</td><td>Thu1</td><td>Fri1</tr>
<tr><td>8:40</td><td>Mon2</td><td>Tue2</td><td>Wed2</td><td>Thu2</td><td>Fri2</tr>
<tr><td>9:00</td><td>Mon3</td><td>Tue3</td><td>Wed3</td><td>Thu3</td><td>Fri3</tr>
<tr><td>9:20</td><td>Mon4</td><td>Tue4</td><td>Wed4</td><td>Thu4</td><td>Fri4</tr>
<tr><td>9:40</td><td>Mon5</td><td>Tue5</td><td>Wed5</td><td>Thu5</td><td>Fri5</tr>
</table>
だから、私は配列を持っています:
$hoursMonday = array("8:00", "8:20", "8:40")
$hoursMondayAssigned = array("8:00", "8:20")
$hoursMondayAvailable = array("8:40")
月曜日から金曜日まで毎日、これらの 3 つの配列があります。
次に、毎日の時間をテーブルに書き込む必要があります。たとえば、この場合、月曜日と時間のセルを配置する必要があります: 8:40 のテキストは「利用可能」で、「8:00」と「8:20」の場合は月曜日の列に配置する必要があります。時間、システムはそれらの両方に「ビジー」を設定する必要があります。
例の配列を使用した結果のテーブルは、次のテーブルのようになります。
<table border="1" >
<th>Hour</th>
<th>Mon 25-06-2012</th>
<th>Tue 26-06-2012</th>
<th>Wed 27-06-2012</th>
<th>Thu 28-06-2012</th>
<th>Fri 29-06-2012</th>
<tr><td>8:00</td><td>BUSY</td><td>Tue0</td><td>Wed0</td><td>Thu0</td><td>Fri0</tr>
<tr><td>8:20</td><td>BUSY</td><td>Tue1</td><td>Wed1</td><td>Thu1</td><td>Fri1</tr>
<tr><td>8:40</td><td>AVAILABLE</td><td>Tue2</td><td>Wed2</td><td>Thu2</td><td>Fri2</tr>
<tr><td>9:00</td><td>Mon3</td><td>Tue3</td><td>Wed3</td><td>Thu3</td><td>Fri3</tr>
<tr><td>9:20</td><td>Mon4</td><td>Tue4</td><td>Wed4</td><td>Thu4</td><td>Fri4</tr>
<tr><td>9:40</td><td>Mon5</td><td>Tue5</td><td>Wed5</td><td>Thu5</td><td>Fri5</tr>
</table>
</html>
これを解決するには、jQueryまたはPHPのみを使用したいと思います。
注意すべきことの 1 つは、頻度のパラメーター (この場合は 10 分) が異なる場合があることです。たとえば、頻度が 30 分に設定されている場合、時刻は 8:00 、8:30、9:00、9:30 などになります。
jQueryを使用してこれを解決する方法がよくわかりません。for ループを使用してテーブルを作成する方法は知っていますが、日と時間に応じて正しいセルに情報を配置する必要がある場合、複雑さがレベルアップしています。
ありがとう。