Главная / Программирование /
Язык программирования PHP / Тест 4
Язык программирования PHP - тест 4
Упражнение 1:
Номер 1
В чем состоят функции сервера?
Ответ:
 (1) обрабатывать запросы клиента 
 (2) запускать процессы, запрошенные клиентом, и возвращать клиенту результаты 
 (3) отображать данные на экране компьютера пользователя 
 (4) инициировать соединение с клиентом 
Номер 2
В чем состоят функции клиента?
Ответ:
 (1) выполнять приложение, пользуясь услугами сервера, когда необходимо 
 (2) обрабатывать запросы сервера 
 (3) отображать данные на экране компьютера пользователя 
 (4) инициировать соединение с сервером 
Номер 3
Чем отличается клиент от сервера?
Ответ:
 (1) клиент посылает запросы, а сервер обрабатывает их 
 (2) клиент отображает данные на экране компьютера пользователя, а сервер предоставляет данные 
 (3) сервер выполняет запросы клиента, специализируясь на эффективном решении задач определенного класса 
 (4) сервер создает соединение, а клиент, пользуясь им, передает свой запрос 
 (5) сервер есть часть компьютерной архитектуры сервер-сервер, а клиент – архитектуры клиент-клиент 
Упражнение 2:
Номер 1
Как передаются данные методом GET
?
Ответ:
 (1) данные передаются в строке запроса (QUERY_STRING)
 
 (2) данные передаются в теле запроса 
 (3) данные передаются в виде пар имя_переменной=значение
 
 (4) тип передаваемых данных передается в переменной окружения CONTENT_TYPE
 
 (5) пользователь может передавать серверу данные только при помощи HTML-формы 
Номер 2
Как передаются данные методом POST
?
Ответ:
 (1) данные передаются в теле запроса 
 (2) данные передаются в строке запроса (QUERY_STRING)
 
 (3) пользователь может передавать серверу данные при помощи html-формы 
Номер 3
В чем отличие метода HEAD
от методов GET
и POST
?
Ответ:
 (1) HEAD
не возвращает тело ресурса, в отличие от GET
и POST
 
 (2) HEAD
отправляет данные в теле запроса 
 (3) данные в HEAD
не передаются в виде пар имя=значение 
 (4) У HEAD
нет условного аналога, как у GET
 
Упражнение 3:
Номер 1
Передать на сервер методом GET
информацию о статье: ее название (title)
и имя автора (author)
. Сервер должен сгенерировать и вывести сообщение, что статья этого автора с таким названием внесена в каталог.
Ответ:
 
(1)
cначала нужно создать форму (файл form.html
) вида:
<h2>Внесение статьи в каталог</h2>
<form action="2.php" method=GET>
Название статьи:<br> <input type=text name=title>
<br>Автор статьи:<br><input type=text name=author>
<p>
<input type=submit value=send>
</form>
Затем нужно создать скрипт 2.php
для обработки этой формы:
<?php
$str = " Статья под названием ";
$str .= "<font color=red>" . $_GET["title"]. "</font> ";
$str .= " автора <font color=red>" . $_GET["author"] ."</font> внесена в каталог.";
echo $str;
?>
 
 
(2)
сначала нужно создать форму (файл form.html
) вида:
<h2>Внесение статьи в каталог</h2>
<form action="2.php" method=POST>
Название статьи:<br> <input type=text name=title>
<br>Автор статьи:<br> <input type=text name=author>
<p><input type=submit value=send></form>
Затем нужно создать скрипт 2.php
для обработки этой формы:
<?php
$str = " Статья под названием ";
$str .= "<font color=red>" . $_GET["title"]. "</font> ";
$str .= " автора <font color=red>" . $_GET["author"] ."</font> внесена в каталог.";
echo $str;
?>
 
 
(3)
сначала нужно создать форму (файл form.html
) вида:
<h2>Внесение статьи в каталог</h2>
<form action="2.php" method=GET>
Название статьи:<br> <input type=text name=title>
<br>Автор статьи:<br> <input type=text name=author>
<p><input type=submit value=send></form>
Затем нужно создать скрипт 2.php
для обработки этой формы:
<?php
$str = " Статья под названием ";
$str .= "<font color=red>" .GET["title"]. "</font> ";
$str .= " автора <font color=red>" .GET["author"] ."</font> внесена в каталог.";
echo $str;
?>
 
Номер 2
Передать на сервер методом POST
информацию о статье: ее название (title)
и краткое содержание (description)
. Сервер должен сгенерировать и вывести сообщение, что статья с таким названием и кратким содержанием внесена в каталог.
Ответ:
 
(1)
сначала нужно создать форму (файл form.html
) такого вида:
<h2>Внесение статьи в каталог</h2>
<form action="parser.php" method=POST>
Название статьи:<br> <input type=text name=title>
<br>Краткое содержание статьи:<br> <textarea name=description> </textarea>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт parser.php
для обработки этой формы:
<?php
echo " Статья под названием " . "<font color=red>". $_POST["title"]. "</font> внесена в каталог.<br>";
echo "Краткое содержание статьи состоит в следующем: <br>". $_POST["description"];
?>
 
 
(2)
в строке запроса в браузере нужно написать следующее:
http://localhost/~nina/test/parser.php?title=Первый компьютер&description=Это статья про первый советский компьютер
Затем создать скрипт 2.php
для обработки этой формы:
<?php
echo " Статья под названием " . "<font color=red>". $_POST["title"]. "</font> внесена в каталог.<br>";
echo "Краткое содержание статьи состоит в следующем: <br>". $_POST["description"];
?>
 
 
(3)
сначала нужно создать форму (файл form.html
) вида:
<h2>Внесение статьи в каталог</h2>
<form action="parser.php" method=POST>
Название статьи:<br> <input type=text name=title>
<br>Краткое содержание статьи:<br> <textarea name=description> </textarea>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт parser.php
для обработки этой формы:
<?php
echo " Статья под названием " . "<font color=red>". $HTTP_POST_VARS["title"]. "</font> внесена в каталог.<br>";
echo "Краткое содержание статьи состоит в следующем:
<br>". $HTTP_POST_VARS ["description"];
?>
 
 
(4)
cначала нужно создать форму (файл form.html
) вида:
<h2>Внесение статьи в каталог</h2>
<form action="parser.php" method=POST>
Название статьи:<br> <input type=text name=title>
<br>Краткое содержание статьи:<br> <textarea name=description> </textarea>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт parser.php
для обработки этой формы:
<?php
echo " Статья под названием " . "<font color=red>". $_REQUEST["title"]. "</font> внесена в каталог.<br>";
echo "Краткое содержание статьи состоит в следующем:
<br>". $_REQUEST["description"];
?>
 
Номер 3
Создать страницу для ввода имени пользователя (login)
и пароля (passwd)
. Если пользователь вводит правильную пару (login/passwd)
, то сервер выдает страницу с сообщением, что доступ к секретным страницам открыт, и показывает метод, использованный для передачи данных. Login предлагается выбирать из списка.
Ответ:
 
(1)
cначала нужно создать форму вида:
<form action="01.php">
<p>Выберите имя пользователя(login):
<br><input type=radio name=login value=pit> Pit
<br><input type=radio name=login value=bob checked> Bob
<br>Введите пароль (passwd): <input type=password name=passwd><br>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт 01.php
для обработки этой формы:
<?php
$method = getenv("REQUEST_METHOD");
if ($_GET["login"]=="pit" && $_GET["passwd"]=="123"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_GET);
}elseif($_GET["login"]=="bob" && $_GET["passwd"]=="321"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_GET);
}else {echo "Неверный пароль";}
?>
 
 
(2)
cначала нужно создать форму вида:
<form action="01.php" method=POST>
<p>Выберите имя пользователя(login):
<br><input type=radio name=login value=pit> Pit
<br><input type=radio name=login value=bob checked> Bob
<br>Введите пароль (passwd): <input type=password name=passwd><br>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт 01.php
для обработки этой формы:
<?php
$method = getenv("REQUEST_METHOD");
if ($_POST["login"]=="pit" && $_POST["passwd"]=="123"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_POST);
}elseif($_POST["login"]=="bob" && $_POST["passwd"]=="321"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_POST);
}else {echo "Неверный пароль";}
?>
 
 
(3)
сначала нужно создать форму вида:
<form action="01.php" method=POST>
<p>Выберите имя пользователя(login):
<br><input type=radio name=login value=pit> Pit
<br><input type=radio name=login value=bob checked> Bob
<br>Введите пароль (passwd): <input type=password name=passwd><br>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт 01.php
для обработки этой формы:
<?php
$method = getenv("REQUEST_METHOD");
if ($method["login"]==pit && $method["passwd"]==123){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($method);
}elseif($method ["login"]=="bob" && $method ["passwd"]=="321"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($method);
}else {echo "Неверный пароль";}
?>
 
 
(4)
cначала нужно создать форму вида:
<form action="01.php">
<p>Выберите имя пользователя(login):
<br><input type=radio name=login value=pit> Pit
<br><input type=radio name=login value=bob checked> Bob
<br>Введите пароль (passwd): <input type=password name=passwd><br>
<p><input type=submit value=send>
</form>
Затем нужно создать скрипт 01.php
для обработки этой формы:
<?php
$method = getenv("REQUEST_METHOD");
if ($_REQUEST["login"]=="pit" && $_REQUEST["passwd"]=="123"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_REQUEST);
}elseif($_REQUEST["login"]=="bob" && $_REQUEST["passwd"]=="321"){
echo"Доступ открыт<br>";
echo"Для передачи данных был использован метод ".$method;
echo "<br>Переданные данные:";
print_r($_REQUEST);
}else {echo "Неверный пароль";}
?>
 
Упражнение 4:
Номер 1
Дана следующая html форма:
<form method="post" name="my_form">
Field 1 <input type=text name="f1"><br>
Text <textarea name="f2"> </textarea>
<input type=submit>
</form>
Как можно получить переданные клиентом значения из этой формы?
Ответ:
 (1) $_POST["f1"]
и $_POST["f2"]
 
 (2) $_GET["f1"]
и $_GET["f2"]
 
 (3) $_REQUEST["f1"]
и $_REQUEST["f2"]
 
 (4) $HTTP_POST_VARS ["f1"]
и $HTTP_POST_VARS ["f2"]
 
 (5) $POST["f1"]
и $POST["f2"]
 
 (6) $GET["f1"]
и $GET["f2"]
 
 (7) $f1
и $f2
если register_globals=off
 
Номер 2
Дана следующая html форма:
<form name="my_form">
Field 1 <input type=text name="f1"><br>
Box <input type=checkbox name="f2" value="1">
<input type=submit >
</form>
Как можно получить переданные клиентом значения из этой формы?
Ответ:
 (1) $_POST["f1"]
и $_POST["f2"]
 
 (2) $_GET["f1"]
и $_GET["f2"]
 
 (3) $_REQUEST["f1"]
и $_REQUEST["f2"]
 
 (4) $HTTP_POST_VARS ["f1"]
и $HTTP_POST_VARS ["f2"]
 
 (5) $POST["f1"]
и $POST["f2"]
 
 (6) $GET["f1"]
и $GET["f2"]
 
Номер 3
Дана следующая html форма:
<form name="my_form" method="get">
Field 1 <input type=text name="f1"><br>
Select field
<select name="f2">
<option value="1">first
<option value="2">second
</select><br>
<input type=submit>
</form>
Как можно получить переданные клиентом значения из этой формы?
Ответ:
 (1) $_POST["f1"]
и $_POST["f2"]
 
 (2) $_GET["f1"]
и $_GET["f2"]
 
 (3) $_REQUEST["f1"]
и $_REQUEST["f2"]
 
 (4) $POST["f1"]
и $POST["f2"]
 
 (5) $f1
и $f2
, если register_globals=off
 
Упражнение 5:
Номер 1
Как можно узнать метод, который был использован при отправке запроса?
Ответ:
 (1) используя команду getenv("REQUEST_METHOD")
 
 (2) с помощью константы REQUEST_METHOD
 
 (3) с помощью константы QUERY_METHOD
 
 (4) $_SERVER['REQUEST_METHOD']
 
 (5) $_SERVER['QUERY_METHOD']
 
Номер 2
Как можно узнать виртуальный путь до выполняющегося в данный момент скрипта?
Ответ:
 (1) $_SERVER['PHP_SELF']
 
 (2) getenv('SCRIPT_NAME')
 
 (3) с помощью константы SCRIPT_NAME
 
 (4) $_SERVER['SCRIPT_NAME']
 
Номер 3
Как можно получить адрес страницы, с которой был послан запрос?
Ответ:
 (1) getenv('HTTP_REFERER')
 
 (2) $_SERVER['HTTP_REFERER']
 
 (3) с помощью константы HTTP_REFERER
 
 (4) getenv('REMOTE_HOST')