Огромная масса задач в PHP связана с обработкой данных, полученных от пользователя. И в большинстве случаев, эти данные получены из формы, поэтому обработка форм в PHP является важнейшим элементом в программировании.
Теперь рассмотрим основные функции, используемые для обработки форм в PHP. Существует два метода – это GET и POST. Главное их отличие – это вид отправки: открытый (GET) и закрытый (POST).
Стоит отметить, что разные формы возвращают разные типы данных в PHP. Все зависит от значений указанных в параметре VALUE. Если в форме ничего не указанно или не выбран переключатель, то возвращается FALSE. Если значений передаваемых из формы несколько (например из <SELECT>), то необходимо в имени элемента формы указать, что будет использован массив, при помощи скобочек (имя_элемента_формы[]).
<input type="checkbox" name="checkbox3" value="ай-ай-ай"> вы шутите?
</form>
</body>
</html>
код страницы с PHP
Пример:
<html> <body> <?php if ($_POST['checkbox1']) { if ($_POST['checkbox2']) { echo "У вас наверное мало свободного времени!<br>"; } else echo "Вы можете не работать <br>"; } elseif ($_POST['checkbox2']) { echo "Вы уже имеете образование<br>"; } else echo"Идите учиться!<br>";
echo $_POST['text2']; echo "<br>";
if ($_POST['checkbox3']) { echo $_POST['checkbox3']; } else echo "странно....";
?> </body> </html>
Результат: страница с формами страница обработки PHP
Примечание*для старых версий PHP, перед извлечением данных из формы, необходимо выполнить проверку существования параметра . Осуществляется с помощью функции isset(), которая служит для проверки существования переменных.
Пример с использованием функции isset:
<html> <body> <?php if (isset($_POST['checkbox1'])) { if ($_POST['checkbox1']) { if (isset($_POST['checkbox2'])) { if ($_POST['checkbox2']) { echo "У вас наверное мало свободного времени!<br>"; } else echo "Вы можете не работать <br>"; } } elseif ($_POST['checkbox2']) { echo "Вы уже имеете образование<br>"; } else echo"Идите учиться!<br>";
echo $_POST['text2']; echo "<br>"; if (isset($_POST['checkbox2'])) { if ($_POST['checkbox3']) { echo $_POST['checkbox3']; } else echo "странно...."; } } ?>