日時列に日付と時刻を挿入しています。ここでは、日付と時刻の値のみを取得しています。手動で割り当てて、日時をMySQLの日時構文と一致させるために次のようにしました。
if($start==NULL && $end==NULL){
$start = '01:00:00';
$end = '02:00:00';
}
$eve_start = $year."-".$nmonth."-".$date." ".$start;
$eve_end = $year."-".$nmonth."-".$date." ".$end;
今、私は$ yearで年、 $ nmonthで月、$ dateで日付を取得し、開始時刻として$ start、終了時刻として$endを取得しています。
$eve_startは2012-06-0101:00:00のようになります。また、個別に印刷すると、$ year、$ nmonth、$ dateの代わりに適切な値が取得されますが、$eve_startまたは$eve_endを印刷すると次のようになります。年の部分のみが印刷されます。
また、データベースでは、日時に対応する値が0000-00-00 00:00:00として挿入され、2012-06-0101:00:00である必要があります。
XMLタグからこれらの値を取得しています。XML形式とCURLを使用してGoogleカレンダーイベントをインポートしています。簡単なイベントの場合、開始日と終了日を時間とともに取得します。しかし、それが終日のイベントである場合、私はxmlファイルで時間を取得せず、開始日と終了日のみを取得します。今私がしているのは、終日のイベントが来るたびに、開始時刻と終了時刻をチェックし、それがnullの場合は、静的な値を割り当てます。私のデータベースに単純なイベントを挿入することに問題はありません。問題は終日のイベントのみです。