みなさん、こんにちは。私は自分が持っているPHPファイル内でMySQLからデータを取得しようとしています。ユーザーが日付(現在は「$ selectedDate」で表されています)を渡したので、その日付に一致するすべてのイベントをクエリにプルさせたいと思います。
問題は、MySQLの日付がUNIX形式であるということです。つまり、時間や秒などがあります。渡された日付は日付のみであるため、完全に一致することはありません。
したがって、私がやろうとしているのは、日付を取得し、マイナス1日である変数と、プラス1日である変数を追加し、その範囲に基づいてイベントをプルすることです。
問題は、それが機能していないことであり、理由がわかりません!約2日間のトラブルシューティングと検索の後、私はあなたに私のスタックオーバーフローの友達を頼りにしています!
何か案は?
$selectedDate = '9-20-2012';
$dateComponents = preg_split('~[+*/-]~', $selectedDate);
$date1 = mktime(0, 0, 0, ( (int)$dateComponents[0] ), (int)$dateComponents[1]-1, (int)$dateComponents[2]);
$date2 = mktime(0, 0, 0, ( (int)$dateComponents[0] ), (int)$dateComponents[1]+1, (int)$dateComponents[2]);
$query = "SELECT id,title,start, DATE_FORMAT(start, '%Y-%m-%d %H:%i' ) AS startDate, end, url, className FROM $tableName WHERE start BETWEEN '$date1' AND '$date2' ORDER BY start";
$result = mysql_query($query) or die(mysql_error());
$array = array();
while($row = mysql_fetch_assoc($result)){
echo($row);
$array[] = $row;
}
ありがとう!