Главная страница
Навигация по странице:

  • Отчет по курсовой работе.

  • Цель работы Разработка клиент-серверного приложения согласно предоставленному заданию. Задание

  • Настройка сервера

  • Блок схемы скриптов

  • Листинг программы

  • Примеры выполнения

  • Отчет по курсовой работе по дисциплине Разработка клиентсерверных приложений


    Скачать 197.55 Kb.
    НазваниеОтчет по курсовой работе по дисциплине Разработка клиентсерверных приложений
    Дата01.06.2021
    Размер197.55 Kb.
    Формат файлаdocx
    Имя файлаBIVT-19-1_Dubovoy_VA_KursR_O.docx
    ТипОтчет
    #212760

    Министерство науки и высшего образования РФ
    ФГАОУ ВПО

    Национальный исследовательский технологический университет «МИСиС»
    Институт Информационных технологий и компьютерных наук (ИТКН)

    Кафедра Инфокоммуникационных технологий (ИКТ)

    Отчет по курсовой работе.

    по дисциплине «Разработка клиент-серверных приложений»

    на тему «Сохранение и отправка отзывов из формы на электронную почту»

    Выполнил:
    студент группы БИВТ-19-1

    Дубовой В. А.

    Проверил:
    Стучилин В. В.


    Москва 2021

    1. Цель работы

    Разработка клиент-серверного приложения согласно предоставленному заданию.

    1. Задание

    Вариант 21

    Необходимо разработать скрипт, который принимает отзыв из формы (имя, содержание, дату), добавляет отзыв в базу данных и отправляет его на указанный в скрипте адрес электронной почты. Также нужно реализовать систему защиты с использованием ручного ввода содержимого графического изображения.



    1. Настройка сервера

    Для использование почтовых функций PHP, нужно настроить параметры SMTP в файлах php.ini и sendmail.ini.





    Также необходимо создать базу данных и таблицу, в которую будем записывать имя, дату и текст отзыва.

    Создадим таблицу feedback со столбцами id, name, date и text:



    1. Блок схемы скриптов

    captcha.php process.php




    1. Листинг программы


    index.html

    DOCTYPE html>







        

        

    Форма обратной связи



        

            

                

                

            

            

                

                

            

            

                

                

            

            

                

                

            

            

        






    captcha.php


    function get_symbols()

    {

        $chars = 'abcdefghjgkmnpqrstuvwxyz123456789';

        $len = rand(5,8);

        $res='';

        $lenchars=strlen($chars);

        for ($i=0; $i<$len; $i++) {

            $res .= substr($chars, rand(0, $lenchars-1), 1);

        }

        return $res;

    }
    function get_image(string $text)

    {

        header("Content-Type:image/png");

        $im = imagecreate(150,50);

        $color = imagecolorallocate($im, rand(0,255), rand(0,255), rand(0,255));

        $font_color = imagecolorallocate($im, rand(0,255), rand(0,255), rand(0,255));

        imagestring($im, 20, rand(3,100), rand(3,30), $text, $font_color);

        imagepng($im);

    }   
    $captcha = get_symbols();

    session_start();

    $_SESSION['captcha']=$captcha;

    get_image($captcha);

    ?>
    process.php

    DOCTYPE html>








    $result='';

    $send_to='voseextreme@gmail.com';

    session_start();

    if (isset($_POST['name']) && isset($_POST['date']) && isset($_POST['text']) && isset($_POST['captcha']) && isset($_SESSION['captcha'])) {

        if ($_POST['captcha']==$_SESSION['captcha']) {

            $result .= "Проверка пройдена.
    ";

            $name=$_POST['name'];

            $date_rus=$_POST['date'];

            $date = date('Y-m-d', strtotime(str_replace('-', '/', $date_rus)));

            $text=$_POST['text'];

            $subject='Новый отзыв ' . $date_rus;

            $mailresp=mail($send_to, $subject, $_POST['text']);

            if ($mailresp==1) {$result .= "Письмо с отзывом было успешно отправлено на почту.
    ";} else {$result .= "Неизвестная ошибка отправки письма.
    ";}

            

            $link = mysqli_connect('localhost', 'root', '', 'kursa4');

            $query="insert into feedbacks (name, date, text) values ('$name', '$date', '$text')"; 

            $dbresp = mysqli_query($link, $query) or die();

            if ($dbresp==1) {$result .= "Запись в БД прошла успешно.
    ";} else {$result .= "Ошибка записи в БД.
    ";}

            mysqli_close($link);

        }

        else {

            $result='Символы введены неверно!
    ';

        }

    }

    else {

        $result='Доступ запрещен';

    }

    echo $result;

    ?>





    1. Примеры выполнения

    Проверка на заполнение полей формы:



    Ввод последовательности:





    В случае корректного заполнения формы:





    Полученная запись в БД



    Полученное письмо



    1. Вывод

    В ходе данной курсовой работы было разработано клиент-серверное приложение для получения отзывов из формы на сайте. Отзыв включает в себя имя клиента, дату и содержание отзыва. Для защиты от роботов реализована система защиты с использованием ручного ввода содержимого графического изображения. Полученный запрос обрабатывается сервером и записывает отзыв в базу данных, а также отправляет письмо с отзывом на указанную в скрипте электронную почту.


    написать администратору сайта