Я создал форму для пользователей, чтобы заполнить ее, а затем я создаю внутреннюю систему управления контентом, чтобы пользователь мог редактировать некоторые поля, которые он заполнил, на случай, если они допустили какие-либо ошибки или нуждаются в обновлении. Итак, на данный момент у меня есть несколько полей в базе данных, которые используют один и тот же внешний ключ, поэтому я хочу иметь возможность зациклить обновление, чтобы оно обновляло каждую из строк в отдельности.
Попытка сделать это статически не с помощью цикла, а потому, что в форме они могут заполняться от 1 до 30 в зависимости от поля, и некоторые поля имеют 2 столбца, которые необходимо обновить, а другие только один, поэтому я немного озадачен тем, как скомпилировать код так что это работает. Я пробовал цикл для каждого. но это приводит только к одному коду обновления.
$ vaccolates — это столбец в базе данных, который будет обновляться как «награды», которые можно увидеть в примере с базой данных, например ниже. inf_id=1, $vaccolates="first place sprint"
, $ vid — это поле внешнего идентификатора, которое связывает большую таблицу со всей остальной информацией.
if ($vaccolates != '') {
foreach ($vaccolates as $valuesawards) {
$sql_update_awards = sprintf("UPDATE inf_awards SET awards = %s WHERE inf_id = $vid", escapestring($connection, $valuesawards,'text'));
}
} else {
$vaccolates = '';
}
$sql_update_awards = rtrim($sql_update_awards, ',');
$countRowAges = count($_POST['awardact']);
$results_update_award = mysqli_query($vconncvnl, $sql_update_awards);
Таким образом, в базе данных это выглядит примерно так и говорит, что пользователь с inf_id = 2 хочет обновить из-за орфографических ошибок. Мне нужен код для обновления каждого поля, которое он обновил индивидуально, исходя из их inf_id, в данный момент я получаю только одно обновление, так это только первый.
awards (table)
awardsID(pk) inf_id(fk) awards
1 1 first place sprint
2 2 first palace marathon
3 2 fourth space spriny
4 2 third place hurdles
5 3 second place hurdles
а также есть другие поля, подобные приведенным ниже, для которых также потребуется аналогичный код, если это возможно
racehistory (table)
raceID(pk) inf_id(fk) startdate enddate
1 1 30th jan 4 feb
2 1 6th nov 8 dec
3 1 2 june 2 july
4 2 30 jan 8 feb
Основная таблица, в которой есть inf_id, который содержит другую информацию из формы, которую заполнил пользователь, и две таблицы выше относятся к этой таблице (я поместил их в их собственную таблицу, потому что они могли бы заполнить несколько результатов для гонок)
influencer (table)
inf_id(pk) name email age status
1 john [email protected] 15 active
2 lucy [email protected] 17 elite
3 david [email protected] 13 recruit
Задача ещё не решена.
Других решений пока нет …