PHP получает дни, когда вы доступны, без множества переменных.
Вопрос
Вот моя ситуация:Я создаю небольшой веб-сайт, на котором при регистрации вы можете выбрать, в какие дни вы доступны для чего-либо.
В понедельник унос понедельника после во вторник унос во вторник, а также ...
Всю дорогу до воскресенья.
Я проверяю эту форму на PHP, и мне нужно объявить 14 переменных и просмотреть каждую, чтобы определить, был ли установлен флажок.
Теперь мне интересно, нет ли более простого способа?Это флажки, а не то, что при загрузке файлов вы просто добавляете [] к атрибуту имени в HTML, и они загружаются в виде массива.
Но это было бы удобно.Кто-нибудь знает, как я могу добиться чего-то подобного?
Решение
На самом деле, вы можете просто добавить []
до конца имен, просто убедитесь, что вы установили все их значения по-разному.
<input type="checkbox" name="available[]" value="Mon AM" />
<input type="checkbox" name="available[]" value="Mon PM" />
Затем просто переберите $_POST['available']
массив в вашем коде обработки формы.
Другие советы
Основываясь на ответе Чада, вот код, который вы будете использовать для просмотра переменных:
foreach($_POST['available'] as $a)
{
//Do stuff with $a
}
Если вас беспокоит безопасность или производительность (а это так и должно быть), возможно, вам тоже следует сделать это.
If (count($_POST['available']) > 14) {
softErrorToClient('The data you entered could not be analysed. Please try again.');
// log this error... someone's being naughty
}