Программирование на php
Приобретение навыков программирования на php, в том числе, в разработке классов. Изучение технологии получения и обработки данных из html-формы. Порядок создания файла index.html. Разметка главной страницы index.html на примере прохождения теста.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 11.01.2018 |
Размер файла | 996,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ
по курсу: Программирование
«Программирование на php»
РАБОТУ ВЫПОЛНИЛА
СТУДЕНТКА ГР. №
подпись, дата инициалы, фамилия
Санкт-Петербург
2017
1 Цель работы: приобрести навыки программирования на php, в том числе, в разработке классов; изучить технологию получения и обработки данных из html-формы.
2 Выполнение работы:
В каталоге WebServers -> home создайте папку с названием web-проекта (латиница), например, «lab_1». Внутри папки «lab_1» создайте папку «www». В директории «www» будут храниться все рабочие файлы проекта (с расширением html, php, css и т.д.). По умолчанию при обращении к проекту запускается файл с названием index.php или index.html. В рамках выполнения лабораторной работы создайте файл index.html. На рисунке 1 показана структура проекта.
Рисунок 1 - Структура папки сайта
Рисунок 2 - Текстовые файлы
В папку «text» поместите текстовые файлы с оценками результатов тестирования (рисунок 2).
Выполним разметку главной страницы index.html. Для примера рассмотрим случай прохождения теста из 10 вопросов.
Текст index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Обработка HTML формы</title>
</head>
<body>
<div align="left" valign="center" style="background: #7B68EE; width: 500px; height: 700 px;">
<form action="nphp.php" method="POST">
Укажите ваше имя и пол <br>
Имя: <input type="text" name="name1" /> <br>
<input type="radio" name="pol" value="m" /> Мужской<br>
<input type="radio" name="pol" value="g" /> Женский
<p style="">
Укажите перевод следующих слов
<ol>
<li>слово "Umbrella" переводится как</li>
<input type="radio" name="q1" value="a1">Зонт<br>
<input type="radio" name="q1" value="a2">Куб<br>
<input type="radio" name="q1" value="a3"> Платок
<li>введите перевод слова "Thunder":</li>
<input type="text" name="q2"><br>
<li>выберите правильный вариант перевода слова "Disenar"</li>
<input type="checkbox" name="q3" value="a1"> врач<br>
<input type="checkbox" name="q3" value="a2"> дизайнер<br>
<input type="checkbox" name="q3" value="a3"> садовод<br>
<li>введите перевод слова "Winter"</li>
<input type="text" name="q4"><br>
<li>"Rain" в переводе означает</li>
<select id="s1" name="q5">
<option value="a1">солнце</option>
<option value="a2">снег</option>
<option value="a3">дождь</option>
</select>
<li>"Happy" в переводе означает</li>
<select id="s2" name="q6">
<option value="a1">грустный</option>
<option value="a2">весёлый</option>
<option value="a3">солнечный</option>
</select>
<li> Что из перечисленого списка может быть зелёным? </li>
<input type="checkbox" name="q7" value="a1" />
grass<br />
<input type="checkbox" name="q7" value="a2" />
rain <br />
<input type="checkbox" name="q7" value="a3" />
sun <br />
<input type="checkbox" name="q7" value="a4" />
foliage <br />
<li> Что из перечисленого имеет 4 угла </li>
<input type="checkbox" name="q8" value="a1" />
square<br />
<input type="checkbox" name="q8" value="a2" />
pyramid <br />
<input type="checkbox" name="q8" value="a3" />
rectangle <br />
<li> Что из перечисленого не имеет углов ? </li>
<input type="checkbox" name="q9" value="a1" />
sphere<br />
<input type="checkbox" name="q9" value="a2" />
pyramid <br />
<input type="checkbox" name="q9" value="a3" />
circle<br />
<li>слово "Star" переводится как</li>
<input type="radio" name="q10" value="a1">Звезда<br>
<input type="radio" name="q10" value="a2">Куб<br>
<input type="radio" name="q10" value="a3"> Овал
</ol>
<input type="submit" value="Результат теста"></p>
Укажите где вы желаете сохранить результата теста:<br>
<input type="radio" name="q11" value="a1"> Отправить письмо на адрес <br>
<input type="radio" name="q11" value="a2"> Сохранить в файл <br>
Укажите адрес электронной почты <input type="text" name="mail"><br>
<input type="submit" value="Отправить или записать результат теста">
</form>
</div>
</body>
</html>
Разработаем скрипт nphp.php и new2.php, проверяющий полноту ввода ответов на вопросы и правильность выбора ответов из предложенных вариантов.
Текст nphp.php:
<?php
include_once("new2.php");
$F=new personal_date;
$F->persona($_POST["name1"],$_POST["pol"]); //Запуск функции persona
$F->counter($_POST["q1"],$_POST["q2"],$_POST["q3"],$_POST["q4"],$_POST["q5"],$_POST["q6"],$_POST["q7"],$_POST["q8"],$_POST["q9"]); //запуск функции counter
$F->Selection($_POST["q11"],$_POST["mail"]); //запуск функции Selection
echo $F->line; //вывод на страницу
/*echo $F->line;
;*/
?>
Текст new2.php:
<?php
class personal_date
{
public $name1 = '';
private $pol;
public $count = 0;
public $line = '';
public function translit()
{ //Используем ассоциативный массив «текстовый ключ» => «значение»
$tr = array("А"=>"A","Б"=>"B","В"=>"V","Г"=>"G",
"Д"=>"D","Е"=>"E","Ж"=>"J","З"=>"Z","И"=>"I",
"Й"=>"Y","К"=>"K","Л"=>"L","М"=>"M","Н"=>"N",
"О"=>"O","П"=>"P","Р"=>"R","С"=>"S","Т"=>"T",
"У"=>"U","Ф"=>"F","Х"=>"H","Ц"=>"TS","Ч"=>"CH",
"Ш"=>"SH","Щ"=>"SCH","Ъ"=>"","Ы"=>"YI","Ь"=>"",
"Э"=>"E","Ю"=>"YU","Я"=>"YA","а"=>"a","б"=>"b",
"в"=>"v","г"=>"g","д"=>"d","е"=>"e","ж"=>"j",
"з"=>"z","и"=>"i","й"=>"y","к"=>"k","л"=>"l",
"м"=>"m","н"=>"n","о"=>"o","п"=>"p","р"=>"r",
"с"=>"s","т"=>"t","у"=>"u","ф"=>"f","х"=>"h",
"ц"=>"ts","ч"=>"ch","ш"=>"sh","щ"=>"sch","ъ"=>"y",
"ы"=>"yi","ь"=>"","э"=>"e","ю"=>"yu","я"=>"ya", " " => "_"
);
return strtr($this->name1,$tr);// «перевод» будет сохранен в поле класса
}
function persona ($name, $pol)
{
$this->name1 =$name;
$this->pol = $pol;
switch($this->pol)
{
case "m": // Если выбран Мужской род
$this->line.="Уважаемый ";
break;
case "g": // Если выбран женский род
$this->line.="Уважаемая ";
break;
}
$this->line.=$this->name1;
}
public function error ()
{
echo "<p align='center'>Заполните ответы на вопросы №:";
if ($q0=='') echo "1 ";
if ($q1=='') echo "2 ";
if ($q2=='') echo "3 ";
if ($q3=='') echo "4 ";
if ($q4=='') echo "5 ";
if ($q5=='') echo "6 ";
if ($q6=='') echo "7 ";
if ($q7=='') echo "8 ";
if ($q8=='') echo "9 ";
if ($q9=='') echo "10 ";
echo ".<br> <a href='index.html'>Вернуться к тесту -></a></form></div></body></html>";
}
public function counter ($q1,$q2,$q3,$q4,$q5,$q6,$q7,$q8,$q9)
{
if($q0=="a1") $count++;
if($q1=="гром") $count++;
if($q2=="a2") $count++;
if($q3=="зима") $count++;
if($q4=="a3") $count++;
if($q5=="a2") $count++;
if($q6=="a1" and "a4") $count++;
if($q7=="a1" and "a3") $count++;
if($q8=="a1" and "a3") $count++;
if($q9=="a1") $count++;
$this->line.=" вы набрали ".$count." баллов.";
$this->results($count);
}
public function results($rcount)
{
if($rcount==0) $f_res="text/2.txt";
if($rcount==1) $f_res="text/3.txt";
if($rcount==2) $f_res="text/4.txt";
if($rcount==3) $f_res="text/5.txt";
if($rcount==4) $f_res="text/6.txt";
if($rcount==5) $f_res="text/7.txt";
if($rcount==6) $f_res="text/8.txt";
if($rcount==7) $f_res="text/9.txt";
if($rcount==8) $f_res="text/8.txt";
if($rcount==9) $f_res="text/9.txt";
$f_t=fopen($f_res, 'r');
$size=filesize($f_res);
$this->str=fread($f_t, $size);
fclose($f_t);
$this->line.=$this->str;
}
public function sendToMail()
{
mail($mail, "Результат",$this->line);
$this->line.=" Результат отправлен на почту.";
}
public function writeToFile()
{
$f=fopen($this->name1.".txt","a");
$this->line.="\r\n";
fwrite($f,$this->line);
fclose($f);
$this->line.=" Результат записан в файл.";
}
public function Selection($selection1,$selection2)
{
if ($selection1=="a2")
{
$this->name1=$this->translit();
$this->writeToFile();
}
if($selection1=="a1")
{
$this->emailmassage->$selection2;
$this->sendToMail();
}
}
}
?>
Результат выполнения теста изображён на рисунке 3. Вывод результата изображён на рисунке 4, сохранение результата в файле изображён на рисунке 5.
Рисунок 3- Тест
программирование index файл
Рисунок 4- Вывод результата на экран
Рисунок 5- Запись файла
Так же можно результат отправить по электронной почте, изображено на рисунке 6,7.
Рисунок 6- Выбор получения результата
Рисунок 7- Результат письмом на адрес
Вывод: В ходе выполнения лабораторной работы был разработан тест на языке php.
Размещено на Allbest.ru
Подобные документы
Характеристика принципов создания html-страниц и связывания их ссылками так, чтобы можно было произвольным образом переходить от одной страницы к другой. Применение тегов форматирования текста и заголовка окна. Этапы создания html-страницы с таблицей.
контрольная работа [16,0 K], добавлен 19.06.2014Понятие об html. Структура файла в формате html. Отличительный признак html-документа. Гипертекстовые ссылки. Создание документов в стандарте html. Заголовки. Форматирование текста и изменение стилей. Фреймы.
реферат [23,7 K], добавлен 17.08.2007Работа с HTML-редактором Adobe Dreamweaver. Этапы и правила построения заглавной страницы сайта, форматирования HTML-страниц, создания гипертекстовых ссылок, создания и форматирования таблиц. Использование графических материалов при разработке сайта.
методичка [1,9 M], добавлен 06.07.2011Язык разметки гипертекстовых страниц HTML. Обеспечение доступности Web-страницы, представление текста и графики. Основные правила и этапы создания сайта, выбор структуры страницы. Оценка экономической целесообразности использования HTML-редакторов.
дипломная работа [86,7 K], добавлен 25.03.2013Основы языка программирования Web-страниц – HTML. Виды информации, которую может содержать Web-страница: текст, графика, звук, анимация и видео. Инструментарий для создания Web-страниц. Основные HTML-редакторы, которые используются для Web-дизайна.
реферат [374,0 K], добавлен 19.01.2011Создание сайта при помощи HTML и CSS. Язык гипертекстовой разметки HTML и таблица стилей CSS. Основные понятия об этих языках, этапы и алгоритмы программного обеспечения. Добавление стилей в документ. Свойства элементов, принцип построения Web-страницы.
курсовая работа [2,9 M], добавлен 12.01.2016Термин HTML (HiperText Markup Language) и его реализация. Программы просмотра страниц написанных на зыке манипулирования гипертекстами. Характеристика специальных программ – браузеров: Google Chrome, Opera, Mozilla Firefox. Структура HTML-страницы.
контрольная работа [118,8 K], добавлен 05.04.2015Изучение тегов для создания списков и таблиц в HTML, основных атрибутов тегов. Практические навыки создания списков и таблиц в HTML-документах. Нумерованные, маркированные и вложенные списки, список определений. Выравнивание данных в ячейках таблицы.
контрольная работа [322,1 K], добавлен 09.08.2014Цели, задачи и компоненты информационной технологии управления. Разработка структуры сайта и программный код работы в HTML–редакторе: создание титульной страницы, документа с фреймами, связь информационных документов с помощью гипертекстовых ссылок.
курсовая работа [34,3 K], добавлен 11.08.2011Специальные разметочные указатели (теги) языка HTML. Основные правила написания тегов. Структура HTML-файлов. Внесение изменений и способы обновления Web-сайта. Необходимые атрибуты для создания на Web-странице бегущей строки и вставки рисунков.
презентация [439,3 K], добавлен 29.01.2014