私はプログラミングに不慣れなので、私の問題に対する簡単な解決策があるかもしれません。
私が達成しようとしているのは、MySQL列で重複フィールドエントリを見つけることです。エントリは日付の例になります01/20/13
日付フィールドを検索して、日付に重複するエントリがいくつあるかを判断する必要があります。次に、その数を見つけたら、日付を取得するループを作成して、日付を日付の名前に変更し、日付を追加します。.
と後の番号.
たとえば01/20/13
、日曜日なので、以下のデータベースの例では4つの重複エントリがあるため、出力は次のようになります。Sunday.1, Sunday.2, Sunday.3, Sunday.4
01/20/13 - 01/26/13
この機能は以下のPHPプログラムで機能していますが、日曜日から土曜日までの7日間の範囲の例で重複を検索するために必要です。1週間分の日付値をハードコーディングしたくありません。ここに問題があり、ここからどこに行けばいいのかわかりません。希望する結果を得るために、数週間分の値をハードコーディングすることしか考えられませんが、もっと簡単な方法があることはわかっています。
私のPHPコード:
<?php
require '../TimeCard/DB.php';
$i = 1;
try{
$stmt = $conn->prepare('SELECT `date` FROM `timeRecords` WHERE `employeeID`= 1 ORDER BY date ');
$stmt->execute();
} catch(PDOException $e){
echo'ERROR: ' . $e->getMessage();
}
while($row = $stmt->fetch())
{
if ($row['date'] == "01/20/13"){
$date = date("l", strtotime($row['date']));
$$date = "Hello today is " . $date . "." . $i . "<br>";
echo $Sunday;
$i++;
}
}
?>
データベース:
+----+------------+----------+--------+-------------------+-----------+------------+-----------+---------+
| id | employeeID | date | timeIn | jobDescription | equipType | unitNumber | unitHours | timeOut |
+----+------------+----------+--------+-------------------+-----------+------------+-----------+---------+
| 10 | 1 | 01/20/13 | 20:30 | Blah1 | | 01E | NULL | NULL |
| 2 | 1 | 01/20/13 | 1:00 | Test | | 02S | NULL | NULL |
| 9 | 1 | 01/20/13 | 13:00 | Blah12 | | 02E | NULL | NULL |
| 8 | 1 | 01/20/13 | 6:00 | Blah | | 02D | NULL | NULL |
| 1 | 1 | 01/21/13 | 09:12 | Worked in hubbard | Excavator | 01E | 8375 | 09:14 |
| 3 | 1 | 01/22/13 | | | | NULL | NULL | NULL |
| 4 | 1 | 01/23/13 | | | | NULL | NULL | NULL |
| 5 | 1 | 01/24/13 | | | | NULL | NULL | NULL |
| 6 | 1 | 01/25/13 | | | | NULL | NULL | NULL |
| 7 | 1 | 01/26/13 | | | | NULL | NULL | NULL |
+----+------------+----------+--------+-------------------+-----------+------------+-----------+---------+