Моя форма состоит из разных типов входов.Как проверить, является ли поданная форма пустой?
Есть ли способ проверить, была ли форма отправлена с любым пользовательским вводом?
Моя форма состоит из разных типов входов.Как проверить, является ли поданная форма пустой?
Есть ли способ проверить, была ли форма отправлена с любым пользовательским вводом?
Есть ли способ проверить, что вся форма пуста?
Без проверки каждого отдельного входа?
Вкратце. Нет, нет.
Вы можете обрабатывать $_POST
как массив и проверять каждую запись в цикле, но вы должны знать о элементах, которые автоматически заполняются, например $_POST['submit']
или что-то подобное.
Запустите ввод через array_filter - он вернет пустой массив, если в массиве нет единственного значения. Если есть значение, массив будет непустым.
Имейте в виду, что этот способ, даже если один флажок отмечен, будет считаться непустым.
Это также удалит любые значения, которые вычисляются как false, например. 0. –
Чтобы увидеть, если что-либо присутствует (либо ввод текста, или, по меньшей мере, значение Флажок = 1), вы можете использовать:
strlen(join($_POST))
Очевидно, только если это форма POST, и это не большая помощь либо, если у вас есть радио или выберите поля со значением по умолчанию. Также кнопка submit не может добавлять строку сама по себе (не называйте ее именем =).
Имплодирование всего входного массива может быть дорогостоящим ресурсом. Его можно злоупотреблять вредоносными целями, особенно. если вы выставите весь массив '$ _POST'. – Gajus
Хорошая точка относительно кнопки отправки. – Dunhamzzz