Разработка автоматизированной системы для интернет провайдера
Разработка концептуальной (инфологической) модели, выбор языка и среды программирования. Разработка блок-схемы алгоритмов для отдельных подпрограмм. Пользовательский интерфейс автоматизированной системы. Требования к клиентскому программному обеспечению.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 10.07.2017 |
Размер файла | 2,4 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
$to = 'barlogru@yandex.ru'; // Add your email address inbetween the '' replacing yourname@yourdomain.com - This is where the form will send a message to.
$email_subject = "Заявка на подключение: $name";
$email_body = "Детали:.\n\nName: $name\n\nEmail: $email_address\n\n\nTimeCall:\n$timecall";
$headers = "BuisnessBox.ru\n"; // This is the email address the generated message will be from. We recommend using something like noreply@yourdomain.com.
$headers .= "Отправил: $email_address";
//массив ошибок
$response_array = array();
// получение каптчи
$captcha = "";
if (isset($_POST["g-recaptcha-response"]))
$captcha = $_POST["g-recaptcha-response"];
if (!$captcha){
$response_array['status'] = 'error';
echo json_encode($response_array);
}
//проверка и обработка каптчи
$secret = "6LeQyCMUAAAAAF4PKKJsAt1oq0FaQbt-QMk-vkMv";
$response = json_decode(file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=".$secret."&response=".$captcha."&remoteip=".$_SERVER["REMOTE_ADDR"]), true);
if ($response["success"] != false) {
@mail($to,$email_subject,$email_body,$headers);
$application = R::dispense('applications');
$application->full_name = $data['fullname'];
$application->type = $data['typeFace'];
$application->organisation = $data['organisation'];
$application->phone = $data['phoneApp'];
$application->email = $data['emailApp'];
$application->wifi = $data['wifi'];
$application->street = $data['street'];
$application->house = $data['house'];
$application->mewslat_email = $data['newslat_email'];
$application->time_call = $data['timecall'];
$application->tarif = $data['tarif'];
$application->internet = $data['internet'];
$application->phone = $data['phoneT'];
$application->phoneNew = $data['phoneNewT'];
$application->colocation = $data['colocation'];
$application->cloud = $data['cloud'];
$application->time_app = date("Y-m-d H:i:s");
R::store($application);
$sucsess['status'] = 'success';
echo json_encode($sucsess);
}else{
$response_array['status'] = 'error';
echo json_encode($response_array);
}
?>
Файл: db.php
<?php
require "libs/rb.php";
R::setup( 'mysql:host=localhost;dbname=Internet35','root');
session_start();
?>
Приложение 2
Листинг файла PHP (форма входа и регистрации в личном кабинете)
Файл: login.php - вход в личный кабинет.
<?php
require "db.php";
header('Content-type: application/json');
$data = $_POST;
$user = R::findOne('users', 'login = ?', array($data['login']));
$response_array = array();
if( $user )
{
if ( md5($data['password']) == $user->password)
{
$_SESSION['logged_user'] = $user;
//Добавили активность в бд
$timeActiv = date("Y-m-d / H:i");
$id = $user->id;
//$id = R::load('$idBean', 1);
//$sql = "SELECT id as login FROM users WHERE login = '$data['login']'";
//$idBean= R::getRow('SELECT id AS login FROM users WHERE login = ?', array($data['login']));
$params = array('activity' => $timeActiv);
$user = R::load('users', $id);
$user->import($params);
$idBean = R::store($user);
//Сообщаем об успехе
$response_array['status'] ='success';
}else
{
$response_array['status'] = 'WrongPassword';
}
}else
{
$response_array['status'] = 'WrongLogin';
}
echo json_encode($response_array);
?>
Файл: singup.php - вход в личный кабинет.
<?php
require "db.php";
header('Content-type: application/json');
$data = $_POST;
$response_array = array();
if( trim($data['login']) == '' )
{
$response_array['status'] = 'WrongLogin';
}
if( trim($data['email']) == '' )
{
$response_array['status'] = 'WrongEmail';
}
if( trim($data['email']) == '' )
{
$response_array['status'] = 'WrongEmail';
}
if( $data['password1'] == '' )
{
$response_array['status'] = 'WrongPassword';
}
if( $data['password2'] != $data ['password1'] )
{
$response_array['status'] = 'PasswordsDoNotMatch';
}
if( R::count('users', "login = ?", array($data['login'])) > 0 )
{
$response_array['status'] = 'userExists';
}
if( R::count('users', "ls = ?", array($data['ls'])) > 0 )
{
$response_array['status'] = 'lsExists';
}
if( R::count('users', "email = ?", array($data['email'])) > 0 )
{
$response_array['status'] = 'emailExists';
}
/*
if ( $data['typelk'] == "fiz"){
if( $data['surname'] == '' ){
$response_array['status'] = 'WrongSurname';
}
if( $data['name'] == '' ){
$response_array['status'] = 'WrongName';
}
if( $data['patronymic'] == '' ){
$response_array['status'] = 'WrongPatronymic';
}
}else {
if( $data['nameorg'] == '' ){
$response_array['status'] = 'WrongOrganisation';
}
}
*/
if( empty($response_array) )
{
$user = R::dispense('users');
$user->ls = $data['ls'];
$user->login = $data['login'];
$fiz='fiz';
$ur='ur';
if ( $data['typelk'] == $fiz){
$user->type = 'fizik';
$user->surname = $data['surname'];
$user->name = $data['name'];
$user->patronymic = $data['patronymic'];
}
if ( $data['typelk'] == $ur){
$user->type = 'urik';
$user->organisation = $data['nameorg'];
}
$user->phone = $data['phone'];
$user->email = $data['email'];
$user->password = md5($data['password1']);
$user->timeRegistration = date("Y-m-d");
$user->activity = '';
$user->street = '';
$user->house = '';
$user->ip = '';
$user->tarif = '';
$user->cash = 0;
R::store($user);
$sucsess['status'] = 'success';
echo json_encode($sucsess);
}else{
echo json_encode($response_array);
}
?>
Файл: logout.php - вход в личный кабинет.
<?php
require "db.php";
unset($_SESSION['logged_user']);
header('Location: /');
?>
Приложение 3
Листинг файла PHP (страница личного кабинета)
Файл: LK.php
<?php
require "db.php";
header("Content-Type: text/html; charset=utf-8");
$data = $_POST;
if(isset($_POST['Newsletter-emailButton'])){
if( trim($data['Newsletter-email']) == '' || R::count('newslat', "email = ?", array($data['Newsletter-email'])) > 0)
{}else {
$Newsletter = R::dispense('newslat');
$Newsletter->email = $data['Newsletter-email'];
R::store($Newsletter);
}
}
$user = R::findOne('users', 'login = ?', array($_SESSION['logged_user']->login));
if( $user ){
$timeActive = $user->activity;
$timeRegistration = $user->time_registration;
$email = $user->email;
$phone = $user->phone;
$ls = $user->ls;
if ($user->type == "urik"){
$organisation = $user->organisation;
$type = "Юридическое";
}else if ($user->type == "fizik"){
$surname = $user->surname;
$name = $user->name;
$patronymic = $user->patronymic;
$type = "Физическое";
}
$street = $user->street;
$house = $user->house;
$ip = $user->ip;
$tarif = $user->tarif;
$cash = $user->cash;
}
?>
<section id="lk">
<div class="container">
<div id="main">
<div class="row" id="real-estates-detail">
<div class="col-lg-4 col-md-4 col-xs-12">
<div class="panel panel-default">
<div class="panel-heading">
<header class="panel-title">
<div class="text-center">
<strong>О счете</strong>
</div>
</header>
</div>
<div class="panel-body">
<div class="text-center" id="author">
<h3>Лицевой счёт <br>№ <?php echo $ls; ?> </h3>
<p class="cash">
Состояние счета
</p>
<p class="sosmed-author">
<span id="dt" ></span>
</p>
<p class="money">
<span id="money" ><?php echo $cash; ?></span> ?
</p>
</div>
</div>
</div>
<div class="text-center" >
<button class="btn" onclick="updateLk()" >Обновить</button>
</div>
</div>
<div class="col-lg-8 col-md-8 col-xs-12">
<div class="panel">
<div class="panel-body">
<ul id="myTab" class="nav nav-pills">
<li class="active"><a href="#detail" data-toggle="tab">О профиле</a></li>
<li class=""><a href="#contact" data-toggle="tab">Оплата</a></li>
</ul>
<div id="myTabContent" class="tab-content">
<hr>
<div class="tab-pane fade active in" id="detail">
<h4>Информация о профиле</h4>
<table class="table table-th-block">
<tbody>
<tr><td class="active">Зарегистрирован:</td><td><?php echo $timeRegistration; ?></td></tr>
<tr><td class="active">Последняя активность:</td><td><?php echo $timeActive; ?></td></tr>
<tr><td class="active">Лицо: </td><td><?php echo $type; ?></td></tr>
<?php
if ( $type == "Юридическое" ) {
echo "
<tr><td class='active'>Название организации:</td><td>".$organisation."</td></tr>
<tr><td class='active'>IP адрес:</td><td>".$ip."</td></tr>
";
}else if ( $type == "Физическое" ){
echo "
<tr><td class='active'>Фамилия:</td><td>".$surname."</td></tr>
<tr><td class='active'>Имя:</td><td>".$name."</td></tr>
<tr><td class='active'>Отчество:</td><td>".$patronymic."</td></tr>
";
}
echo "<tr><td class='active'>Адрес подключения:</td><td> ".$street.", ".$house." </td></tr>";
?>
<tr><td class="active">Тарифный план:</td><td><?php echo $tarif; ?></td></tr>
</tbody>
</table>
</div>
<div class="tab-pane fade" id="contact">
<p></p>
<iframe frameborder="0" allowtransparency="true" scrolling="no" src="https://money.yandex.ru/quickpay/shop-widget?account=410011292359055&quickpay=shop&payment-type-choice=on&mobile-payment-type-choice=on&writer=seller&targets=%D0%9E%D0%BF%D0%BB%D0%B0%D1%82%D0%B0+%D0%B7%D0%B0+%D1%83%D1%81%D0%BB%D1%83%D0%B3%D0%B8+%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8+BuisnessBox&targets-hint=&default-sum=&button-text=01&successURL=http%3A%2F%2Fip%2FLK.php" width="450" height="198"></iframe>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
Приложение 4
Листинг файла PHP (обработчик восстановления личного кабинета)
Файл: recoveryPHP.php
<?php
require "db.php";
header('Content-type: application/json');
$data = $_POST;
$response_array = array();
if( $data['type'] == "pass")
{
$user = R::findOne('users', 'login = ?', array($data['login']));
if( $user )
{
if( $data['pass1'] != $data ['pass2'] )
{
$response_array['status'] = 'PasswordsDoNotMatch';
}else if ( $user->email != $data['email']){
$response_array['status'] = 'WrongEmail';
}else {
$id = $user->id;
$params = array('password' => md5($data['pass1']));
$user = R::load('users', $id);
$user->import($params);
$idBean = R::store($user);
$sucsess['status'] = 'success';
//echo json_encode($sucsess);
}
}else{
$response_array['status'] = 'WrongLogin';
}
}elseif( $data['type'] == "log"){
$user = R::findOne('users', 'ls = ?', array($data['ls']));
if( $user )
{
if( $data['pass1'] != $data ['pass2'] )
{
$response_array['status'] = 'PasswordsDoNotMatch';
}else if ( $user->email != $data['email']){
$response_array['status'] = 'WrongEmail';
}else {
$id = $user->id;
//добавляем пароль
$params = array('password' => md5($data['pass1']));
$user = R::load('users', $id);
$user->import($params);
$idBean = R::store($user);
//добавляем логин
$params = array('login' =>$data['newlogin']);
$user = R::load('users', $id);
$user->import($params);
$idBean = R::store($user);
$sucsess['status'] = 'success';
}
}else{
$response_array['status'] = 'WrongLogin';
}
}
if( empty($response_array) )
{
echo json_encode($sucsess);
}else{
echo json_encode($response_array);
}
?>
Приложение 5
Листинг файла HTML (вывод информации на экран в личном кабинете)
Файл LK.php
<section id="lk">
<div class="container">
<div id="main">
<div class="row" id="real-estates-detail">
<div class="col-lg-4 col-md-4 col-xs-12">
<div class="panel panel-default">
<div class="panel-heading">
<header class="panel-title">
<div class="text-center">
<strong>О счете</strong>
</div>
</header>
</div>
<div class="panel-body">
<div class="text-center" id="author">
<h3>Лицевой счёт <br>№ <?php echo $ls; ?> </h3>
<p class="cash">
Состояние счета
</p>
<p class="sosmed-author">
<span id="dt" ></span>
</p>
<p class="money">
<span id="money" ><?php echo $cash; ?></span> ?
</p>
</div>
</div>
</div>
<div class="text-center" >
<button class="btn" onclick="updateLk()" >Обновить</button>
</div>
</div>
<div class="col-lg-8 col-md-8 col-xs-12">
<div class="panel">
<div class="panel-body">
<ul id="myTab" class="nav nav-pills">
<li class="active"><a href="#detail" data-toggle="tab">О профиле</a></li>
<li class=""><a href="#contact" data-toggle="tab">Оплата</a></li>
</ul>
<div id="myTabContent" class="tab-content">
<hr>
<div class="tab-pane fade active in" id="detail">
<h4>Информация о профиле</h4>
<table class="table table-th-block">
<tbody>
<tr><td class="active">Зарегистрирован:</td><td><?php echo $timeRegistration; ?></td></tr>
<tr><td class="active">Последняя активность:</td><td><?php echo $timeActive; ?></td></tr>
<tr><td class="active">Лицо: </td><td><?php echo $type; ?></td></tr>
<?php
if ( $type == "Юридическое" ) {
echo "
<tr><td class='active'>Название организации:</td><td>".$organisation."</td></tr>
<tr><td class='active'>IP адрес:</td><td>".$ip."</td></tr>
";
}else if ( $type == "Физическое" ){
echo "
<tr><td class='active'>Фамилия:</td><td>".$surname."</td></tr>
<tr><td class='active'>Имя:</td><td>".$name."</td></tr>
<tr><td class='active'>Отчество:</td><td>".$patronymic."</td></tr>
";
}
echo "<tr><td class='active'>Адрес подключения:</td><td> ".$street.", ".$house." </td></tr>";
?>
<tr><td class="active">Тарифный план:</td><td><?php echo $tarif; ?></td></tr>
</tbody>
</table>
</div>
<div class="tab-pane fade" id="contact">
<p></p>
<iframe frameborder="0" allowtransparency="true" scrolling="no" src="https://money.yandex.ru/quickpay/shop-widget?account=410011292359055&quickpay=shop&payment-type-choice=on&mobile-payment-type-choice=on&writer=seller&targets=%D0%9E%D0%BF%D0%BB%D0%B0%D1%82%D0%B0+%D0%B7%D0%B0+%D1%83%D1%81%D0%BB%D1%83%D0%B3%D0%B8+%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8+BuisnessBox&targets-hint=&default-sum=&button-text=01&successURL=http%3A%2F%2Fip%2FLK.php" width="450" height="198"></iframe>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
Размещено на Allbest.ru
Подобные документы
Построение концептуальной (инфологической) модели базы данных. Выбор языка и среды программирования, требования к клиентскому приложению. Выбор шаблонов проектирования, UML диаграмма классов с учетом выбранных шаблонов. Тестирование слайдера "Slick".
дипломная работа [2,5 M], добавлен 10.07.2017Требования к метрологическому обеспечению. Разработка архитектуры пользовательского интерфейса. Требования к программному, математическому, информационному обеспечению. Функциональная схема автоматизации. Разработка схемы информационных потоков.
курсовая работа [343,1 K], добавлен 20.12.2013Изучение и разработка алгоритмов сверления. Выбор языка и среды программирования. Исследование структуры системы компьютерного моделирования. Ввод данных о материале инструмента и детали, методе обработки. Визуальная проверка и корректировка данных.
отчет по практике [295,9 K], добавлен 22.05.2013Разработка требований к программному обеспечению. Проектирование пользовательского интерфейса. Представление информационной системы в архитектуре "клиент-серверная". Проектирование программных модулей. Создание структуры пооперационного перечня работ.
курсовая работа [3,1 M], добавлен 09.08.2011Требования к программному обеспечению, выбор методологии проектирования информационной системы учета и анализа деятельности руководящего аппарата. Проектирование пользовательского программного интерфейса, взаимодействие приложения с источниками данных.
дипломная работа [2,4 M], добавлен 12.01.2011Требования к программному изделию и параметрам технических средств. Описание пользовательского интерфейса для автоматизированной системы учёта товаров на оптовом складе. Обоснование выбора языков программирования, организации входных и выходных данных.
дипломная работа [3,4 M], добавлен 02.04.2013Выбор, обоснование и особенности работы СУБД. Характеристика языков программирования. Разработка структурной и функциональной модели информационной системы аптеки. Проектирование программной среды АИС и ее интерфейса. Построение модели базы данных.
курсовая работа [442,3 K], добавлен 21.04.2012Разработка автоматизированной системы учета книг в библиотеке юридического факультета АГТУ: рассмотрение даталогической и инфологической моделей данных, выбор среды программирования, создание интерфейса пользователя, расчет затрат на внедрение проекта.
дипломная работа [3,0 M], добавлен 08.02.2011Разработка автоматизированной информационной системы для учета и контроля выполнения ремонтных работ, и предоставления услуг по разработке программного обеспечения компании "МегионСофтОйл", разработка алгоритмов приложений программной системы и модулей.
дипломная работа [5,3 M], добавлен 29.06.2012Техническое задание на разработку автоматизированной системы и складского учета управления универсальной торговой базы. Проектирование информационной системы и выбор среды для создания программного продукта. Создание интерфейса и руководство пользователя.
дипломная работа [2,1 M], добавлен 11.07.2015