Я искал и пробовал множество решений, но, похоже, не понимаю этого. У меня есть событие, которое происходит каждую неделю в один и тот же день недели. Я хочу иметь возможность добавить его в базу данных MySQL, чтобы та же самая точная информация поступала в течение 16 разных недель, то есть будет изменяться только поле eventDate.
В настоящее время форма для добавления события имеет флажок с надписью ‘recurring’ и поле даты для начальной даты события. Затем я пытаюсь вставить исходную запись с введенной датой, прежде чем проходить через еще 15 вставок с датой, установленной каждый раз на 1 неделю, но остальные данные будут такими же, как первоначально введенные.
Я назначил переменные из отправки формы, а затем выполняю вставку в соответствии с тем, установлено ли для поля ‘recurring’ значение 1. Я не получаю сообщение об ошибке, но событие вводится с датой 0000-00-00. Он отлично работает, когда я удаляю повторяющийся тест и просто делаю прямую вставку.
$id=$_POST["eventid"];
$eventHeadingTemp = $_POST["eventHeading"];
$eventHeading = mysql_escape_string($eventHeadingTemp);
$eventTypeId = $_POST["eventTypeId"];
$eventInfoTemp = $_POST["eventInfo"];
$eventInfo = mysql_escape_string($eventInfoTemp);
$eventDate = $_POST["eventDate"];
$recurring = $_POST["recurring"];
$eventStartTime = $_POST["eventStartTime"];
$eventImagesDelete=$_POST["eventImagesDelete"];
if ($id==0) {
if ($recurring==1) {
$SQL="INSERT INTO events (eventHeading, eventTypeId, eventInfo, eventDate, recurring, eventStartTime, eventImage, eventThumb) VALUES ('$eventHeading', '$eventTypeId', '$eventInfo', '$eventDate', '$recurring', '$eventStartTime', '$eventImage', '$eventThumb')";
for ($i=0; $i<16; $i++) {
$eventDate = strtotime('+1 week' , $eventDate);
$SQL="INSERT INTO events (eventHeading, eventTypeId, eventInfo, eventDate, recurring, eventStartTime, eventImage, eventThumb) VALUES ('$eventHeading', '$eventTypeId', '$eventInfo', '$eventDate', '$recurring', '$eventStartTime', '$eventImage', '$eventThumb')";
}
}
else {
$SQL="INSERT INTO events (eventHeading, eventTypeId, eventInfo, eventDate, recurring, eventStartTime, eventImage, eventThumb) VALUES ('$eventHeading', '$eventTypeId', '$eventInfo', '$eventDate', '$recurring', '$eventStartTime', '$eventImage', '$eventThumb')";
}
ОБНОВЛЕНИЕ: я вижу, что этот вопрос просматривался время от времени, но пока не получил ответа, поэтому хочу добавить, что, если я не представил проблему в явном виде, пожалуйста, не стесняйтесь говорить об этом и просить больше / лучше информации. Спасибо…
Задача ещё не решена.
Других решений пока нет …