-1

特定の日付範囲のスタッフの数を表示する必要がある日付に基づく要件があり、日曜日と政府の祝日はカウントされません。

------------------------------------------
|Staff name| less | Full | more | Absent |
------------------------------------------
| name 1   | 1    | 3    | 1    |  1     |
------------------------------------------
| name 2   | 2    | 2    | 2    | 0      |
------------------------------------------

これは私の要件です:

  1. 日曜日は数えてはいけません
  2. 土日は4時間勤務です
  3. 平日は 8 時間の作業が必要です

ただし、スタッフは固定よりも低くまたは高く入力できます。この表では、スタッフが 7 時間働いた場合、少ない列で +1 がカウントされ、8 時間以上働いた場合は多くで +1 がカウントされ、正確に 8 時間働いた場合は、完全な列で +1 がカウントされます。 、特定の日付に彼が欠席した場合、欠席の列に +1 がカウントされます。

土曜日の場合:上記と同じですが、8 時間は 4 時間と見なされます。いずれにせよ、日曜日はカウントされるべきではありません。

この要件のために、アクティブ ステータスの日曜日と政府の祝日を含む 1 年の 365 日すべてで構成される新しい MySQL テーブルを用意する必要がありますか?? または、テーブルがなくてもできますか?もしそうなら、それを行う方法、plsは説明します。

前もって感謝します..

4

1 に答える 1

0
$day_of_week = date("D");

現在の曜日が表示されるので、それが「土」か「日」かを知るのに役立ちます。

政府の祝日については、それらをテーブルに保存する必要があります。おそらく最も簡単な方法は、日、月、年を持つことです。次に、次のように現在の日付を確認できます。

$mon = date("m");
$day = date("d");
$year = date("Y");

これらの変数を使用してクエリを作成し、現在の日付が休日でないことを確認してください。

$sql = "SELECT * FROM holidays WHERE day='".$day."' AND month='".$month."' AND year='".$year."'";
....execute query
于 2012-05-10T06:16:52.460 に答える