Отправить & quot; Кнопка & quot; -ID при отправке

У меня есть страница PHP, которая содержит форму с некоторыми различными полями ввода, e. г. день, месяц, год и т. д. Метод формы POST, через GET отправляется только одно не редактируемое поле (идентификатор пользователя).
Конечно, есть кнопка «Submit», которая запускает форму Action (PHP Script на сервере).
Теги формы также содержат таблицу с пустыми ячейками. Теперь возникает мой вопрос:

Если пользователь щелкает по одной из ячеек таблицы, форма должна быть отправлена, но в дополнение к обычным данным формы также должен передаваться идентификатор ячейки таблицы (если для меня это не имеет значения через POST или GET). Как я могу это сделать?

// Редактировать 2:

...
<form method="post" action="<?= DOMAIN?>/.../addUserTimetable.php?uid=<?= $user->getUserID() ?>">
<select id="day" name="day">
...
</select>
...
<input name="yearend" id="yearend" ...>
<button type="submit">...</button>
<table class="bordered">
<tr>
<th>Std.</th>
<th>Montag</th>
<th>Dienstag</th>
<th>Mittwoch</th>
<th>Donnerstag</th>
<th>Freitag</th>
</tr>
<?php
for($i=1; $i<13;$i++) {
echo "<tr>";
echo "<th>".$i. "</th>";
for($j=1;$j<6;$j++) {
echo "<td id='h".$i. "d".$j. "' onclick='???'></td>";
}
echo "</tr>";
}
?>
</table>
</form>
...

Процессия на стороне сервера — это хорошо, но у меня нет никаких идей — даже после двух часов работы в Google — как я могу передать идентификатор ячейки дополнительно.

0

Решение

Это не должно быть трудно. Посмотрите на следующий пример:

<form>
<input type="text" name="something">

<table>
<tr>
<td><input type="submit" name="cel1">
</tr>
<tr>
<td><input type="submit" name="cel2">
</tr>
<tr>
<td><input type="submit" name="cel13">
</tr>
</table>

<input type="submit" value="save">
</form>

Придавая кнопкам отправки в ячейках таблицы атрибут name, это имя также будет присутствовать в качестве ключа на $_REQUEST, Продолжайте и var_dump $ _REQUEST, и вы увидите, что вы можете узнать в бэкэнде, какая кнопка была нажата, проверив, какая клавиша существует.

Обратите внимание, что POST / GET здесь совершенно не имеет значения, оба будут работать одинаково. И, очевидно, вы можете применить некоторые CSS к этим кнопкам, чтобы сделать их прозрачными и положить их поверх ячеек таблицы, чтобы они не выглядели как кнопки, а просто «фиксировали» щелчок пользователя.

Последнее замечание: вы уверены, что хотите отправить userID в качестве параметра GET? Это было бы очень легко для кого-то с плохими намерениями манипулировать. Не следует отправлять идентификатор вообще, а хранить его в сеансе на сервере.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector