Главная /
PHP: основы /
Для запроса имени учетной записи пользователя (логина) и отображения приветствия после нажатия на кнопку "Login" был разработан следующий код: // Файл mainpage.htm: <html><head><title>Добро пожаловать</title></head><body&g
Для запроса имени учетной записи пользователя (логина) и отображения приветствия после нажатия на кнопку "Login" был разработан следующий код:
// Файл mainpage.htm:
<html><head><title>Добро пожаловать</title></head><body>
<form method="POST" action="hello.php">
Введите, пожалуйста, имя своей учетной записи:
<input name="Login" type="text">
<input type="submit" name="Login" value="Login">
</form>
</body></html>
// Файл hello.php:
<html><head><title>Добро пожаловать </title></head><body>
Здравствуйте,
<?php
echo $_POST["Login"];
?>!
</body></html>
После нажатия на кнопку "Login" всегда отображается строка " Здравствуйте, Login!". Из приведенных высказываний укажите высказывание, раскрывающее причину некорректности работы программы:
вопрос
Правильный ответ:
для элемента текстового ввода не задано свойство
value
, поэтому данные об этом элементе никогда не отправляются. Вместо этого отправляются данные об элементе с типом "submit"
, для которого name (равное "Login") и value
(равное "Login") заданы
HTML-код в mainpage.htm некорректен, т.к. содержит два элемента с одинаковыми значениями атрибутов name. Из-за этого при попытке передачи данных происходит ошибка, переменной с именем "Login" в массиве
$_POST
не существует, и интерпретатор подставляет вместо ее значения имя переменной, т.е. "Login"
переменная с именем учетной записи и переменная, содержащая данные об элементе с типом
"submit"
, имеют одно и то же имя (равное атрибуту name в каждом из элементов), поэтому данные об имени затираются данными об элементе с типом "submit"
указанным методом передаются только данные об элементе с типом
"submit"
. Все остальное передается в строке запроса после указанного в атрибуте формы action URL, поэтому имя учетной записи пользователя будет находиться в $_GET["Login"]
Сложность вопроса
93
Сложность курса: PHP: основы
50
Оценить вопрос
Комментарии:
Аноним
Экзамен прошёл на 4.
18 авг 2018
Аноним
спасибо
02 ноя 2015
Другие ответы на вопросы из темы программирование интуит.
- # PHP-сценарий содержит следующий код: <?php define("FOO","значение константы"); $bar = is_defined("FOO"); echo $bar; ?> Укажите результат выполнения сценария:
- # Гибкое (==) сравнение переменной со значением "-1" даст результат TRUE, если переменная содержит:
- # В конструкции for(выражение1; выражение2; выражение3) {тело цикла} элементы "выражение1", "выражение2", "выражение3"ведут себя следующим образом:
- # Из приведенных ниже высказываний укажите истинное:
- # Файл a.php содержит следующий код: <?php session_start(); $_ HTTP_SESSION_VARS["prev_page"] = "a.php"; ?> <a href="b.php">Перейти на следующую страницу</a> Файл b.php содержит следующий код: <?php session_start(); echo "Вы пришли с ".$_ HTTP_SESSION_VARS["prev_page"]; ?> Предполагалось, что при переходе на следующую страницу будет отображена строка "Вы пришли с a.php", однако результатом выполнения сценария является строка " Вы пришли с ". Все настройки работы с сессиями являются установленными по умолчанию. Из приведенных высказываний укажите высказывание, раскрывающее причину некорректности работы программы: