Диплом: Автоматизация учета и обработки заявок на IT-обслуживание в конструкторском бюро «Астероид»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
147
$rows_num = mysqli_num_rows($result_set); //общее число
строк
$pages = $rows_num/10; //подсчет числа страниц при выводе
по 10 строк на страницу
$pages = ceil($pages); //округление числа страниц
$page_num = (integer) $_GET['page_num']; //перехват номера
страницы
$order = $_GET['order']; //перехват упорядочивания списка
$search = $_GET['search']; //перехват строки поиска
if ($order==null)
if ($search == null){
$result_set = $mysqli->query ("SELECT * FROM `tickets`
ORDER BY `id` LIMIT 10 OFFSET ".($page_num*10));//10 - число
выводимых на экран строк на странице, вывод без сортировки и поиска
}
if ($_GET['search'] != null){
$result_set = $mysqli->query ("SELECT * FROM
`tickets` WHERE ((creator LIKE '%".$search."%') OR (sdescr LIKE
'%".$search."%') OR (`id` LIKE '%".$search."%') OR (`otdel` LIKE
'%".$search."%') OR (assigned LIKE '%".$search."%'))");
$rows_num = mysqli_num_rows($result_set);
//подсчет количества строк в результатах поиска
$pages = $rows_num/10; //подсчет числа страниц
при выводе по 10 строк на страницу
$pages = ceil($pages); //округление числа
страниц
$result_set = $mysqli->query ("SELECT * FROM
`tickets` WHERE ((creator LIKE '%".$search."%') OR(sdescr LIKE
148
'%".$search."%') OR (`id` LIKE '%".$search."%') OR (`otdel` LIKE
'%".$search."%') OR (assigned LIKE '%".$search."%')) LIMIT 10 OFFSET
".($page_num*10));
}
if ($order!=null){
if ($search != null){
$result_set = $mysqli->query ("SELECT * FROM `tickets`
WHERE ((creator LIKE '%".$search."%') OR(sdescr LIKE '%".$search."%')
OR (`id` LIKE '%".$search."%') OR (`otdel` LIKE '%".$search."%') OR
(assigned LIKE '%".$search."%')) ORDER BY ".$order);
$rows_num = mysqli_num_rows($result_set); //общее
число строк
$pages = $rows_num/10; //10 - число выводимых на
экран строк на странице
$pages = ceil($pages);//округление числа страниц
$result_set = $mysqli->query ("SELECT * FROM `tickets`
WHERE ((creator LIKE '%".$search."%') OR(sdescr LIKE '%".$search."%')
OR (`id` LIKE '%".$search."%') OR (`otdel` LIKE '%".$search."%') OR
(assigned LIKE '%".$search."%')) ORDER BY ".$order." LIMIT 10 OFFSET
".($page_num*10)); //вывод с нужной сортировкой и результатами
поиска (поиск изначально не сортируется)
}
if ($search == null)
$result_set = $mysqli->query ("SELECT * FROM
`tickets` ORDER BY ".$order." LIMIT 10 OFFSET ".($page_num*10));
}
while (($row = $result_set->fetch_assoc()) !=false){
?>
<tr>
<td><center><? echo ($row['id']); ?> </center></td>
149
<td><? echo ($row['crdatetime']); ?> </td>
<td><? echo ($row['creator']); ?></td>
<td><? echo ($row['otdel']); ?></td>
<td><? echo ($row['assigned']); ?></td>
<td><? echo ($row['signdatetime']); ?></td>
<td><? echo ($row['category']); ?></td>
<td><? echo ($row['state']); ?></td>
<td><? echo ($row['sdescr']); ?></td>
<td><center><a href=modifyticketbyadmin.php?id=<?echo
($row['id'])?> class="menu"><img align="bottom" src="image/modify.png"
width="20" height="20">Изменить</a></center></td>
</tr>
}
$mysqli ->close();
?>
</table>
<?if ($pages > 0){?>
<center>
<span class="accounts">|</span>
150
for ($i = 1; $i <= $pages; $i++) {
if ($i == ((integer) $_GET['page_num'] +1)){?>
<a class="accountscurr" href="/alltickets.php?page_num=<?echo
($i-1);?>&order=<?echo($order);?>&search=<?echo($_GET['search'])?>">
<?echo($i);?></a> &nbsp <span class="accounts">|</span> &nbsp
}
else{
?>
<a class="accounts" href="/alltickets.php?page_num=<?echo ($i-
1);?>&order=<?echo($order);?>&search=<?echo($_GET['search'])?>">
<?echo($i);?></a> &nbsp <span class="accounts">|</span> &nbsp
}
}
?>
</center>
<?}
}?>
<!-- КОНЕЦ Вывод содержимого ДАННОЙ страницы для пользователя-
->
</div>
151
<!-- КОНЕЦ Вывод на экран меню основного содержимого
ДАННОЙ страницы -->
</div>
</body>
</html>
Assign.php
<?session_start();
if ($_SESSION['rules'] == "")
session_unset();
if (($_SESSION['rules'] == 'specialist') OR ($_SESSION['rules'] ==
'admin')){
$idsession = $_SESSION['userid'];
$id = $_GET['id'];
$state = 'В работе';
$mysqli = new mysqli ("localhost", "root", "", "asteroidsd");
$mysqli ->query("SET NAMES 'utf8'");
$result_set = $mysqli->query ("SELECT * FROM `users` WHERE (`id`
= '".$idsession."')");
while (($row = $result_set->fetch_assoc()) !=false){
$assignedid = $row['id'];
$assigned = ($row['surname']." ".$row['name']);
}
$signdatetime = date("d.m.Y")." ".date("H:i");
$result_set = $mysqli->query ("SELECT * FROM `tickets` WHERE
(`id` = '".$id."')");
while (($row = $result_set->fetch_assoc()) !=false){
$comments = $row['comments'];
}
$comments = ($comments."\n".$signdatetime.": ".$assigned.": Статус
заявки изменен с Новая на ".$state.".");
152
$mysqli->query ("UPDATE `tickets` SET `state`='".$state."',
`assignedid` = '".$assignedid."', `assigned` = '".$assigned."', `signdatetime` =
NOW(), `comments` = '".$comments."' WHERE (`id` = '".$id."')");
$mysqli ->close();
}
header ("Location:
newtickets.php?page_num=".$_GET['page_num']."&order=".$_GET['order'].
"&search=".$_GET['search']);
?>
Createticket.php
<?session_start();
if ($_SESSION['rules'] == "")
session_unset();?>
<!-- НАЧАЛО Вывод на экран заголовка страницы -->
<? include "header.php"; ?>
<!-- КОНЕЦ Вывод на экран заголовка страницы -->
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/tickets.css" />
<link rel="stylesheet" type="text/css" href="css/forall.css" />
<link rel="stylesheet" type="text/css" href="css/addticket.css" />
<title>Создать заявку</title>
<meta name="viewport" content="width=device-width,initial-scale=1"
/>
<meta http-equiv= "X-UA-Compatible" content="ie=edge" />
</head>
153
<body>
<!-- НАЧАЛО Определение названия страницы для передачи в
leftpanel.php -->
<? $page = "createticket"; ?>
<!-- КОНЕЦ Определение названия страницы для передачи в
leftpanel.php -->
<!-- НАЧАЛО Вывод на экран заголовка страницы -->
<!-- КОНЕЦ Вывод на экран заголовка страницы -->
<?if ($_SESSION['rules'] == 'user'){ ?>
<div class="wrapper">
<!-- НАЧАЛО Вывод на экран меню слева -->
<? include "leftpanel.php"; ?>
<!-- КОНЕЦ Вывод на экран меню слева -->
<!-- НАЧАЛО Вывод на экран меню основного содержимого
ДАННОЙ страницы -->
<div>
<p class="head">Создание заявки</p>
<form name="adduserform" action="" method="post">
<table class="adduser" border='4'>
<tr><td><center><label for="sdescr" class="adduser">Краткое
описание обращения (не более 35
символов)</label></center></td></tr><tr><td><center><input required
maxlength= "35" placeholder="Введите краткое описание обращения"
class="adduser" type=text size="35" id="sdescr" name="sdescr"
/></center></td></tr>
<tr><td><center><label for="fdescr" class="adduser">Дополнительная
информация (при
154
необходимости)</label></center></td></tr><tr><td><textarea cols ="36"
rows ="8" placeholder="Введите дополнительную информацию (при
необходимости)" class="adduser" type=text id="fdescr" name="fdescr"
/></textarea></td></tr>
</table>
</br>
<center><input class="adduser" type="submit" name="addticket"
value="Создать заявку" /></center><br />
</form>
<p class="error">
<? if (isset($_POST["addticket"])){
?>
$sdescr = htmlspecialchars($_POST['sdescr']);
$fdescr = htmlspecialchars($_POST['fdescr']);
$crdate = date("d.m.Y");
$crtime = date("H:i");
$crdatetime = date("d.m.Y")." ".date("H:i");
$creatorid = $_SESSION['userid'];
$category = 'Не задана';
$state = 'Новая';
$error =0;
$mysqli = new mysqli ("localhost", "root", "", "asteroidsd");
$mysqli ->query("SET NAMES 'utf8'");
155
$result_set = $mysqli->query ("SELECT * FROM `users`
WHERE (`id` = '".$creatorid."')");
while (($row = $result_set->fetch_assoc()) !=false){
$creator = $row['surname']." ".$row['name'];
$otdel = $row['otdel'];
}
if ($error ==1) {echo ('Заявка не была создана!');}
if ($error ==0) {
$comments = ($crdatetime.": ".$creator." создал(-а)
заявку.");
$mysqli->query ("INSERT INTO `tickets` (`sdescr`,
`fdescr`, `creatorid`, `creator` , `crdatetime` , `comments`, `state`, `category`,
`otdel`) VALUES ("."'".$sdescr."', '".$fdescr."', '".$creatorid."', '".$creator."',
NOW(), '".$comments."', '".$state."', '".$category."', '".$otdel."')");
echo ('<p class="success">Заявка успешно создана!</p>');
}
$mysqli ->close();
}
?>
</p>
</div>
</div>
<?
}
?>
156
</div>
<!-- КОНЕЦ Вывод на экран меню основного содержимого
ДАННОЙ страницы -->
</div>
</body>
</html>
Deletedep.php
<?
session_start();
if (($_SESSION['rules'] == 'admin') and ($_GET['id'] != 1)){
$id=$_GET['id'];
$mysqli = new mysqli ("localhost", "root", "", "asteroidsd");
$mysqli ->query("SET NAMES 'utf8'");
$result_set = $mysqli ->query("SELECT * FROM `otdeli` WHERE
`id`='".$id."'");
while (($row = $result_set->fetch_assoc()) !=false){
$otd = $row['otdel'];
}
$mysqli ->query("DELETE FROM `users` WHERE `otdel`='".$otd."'");
$mysqli ->query("DELETE FROM `otdeli` WHERE `otdeli`.`id` = '".$id."'");
$mysqli ->close();
header('Location: /deps.php');
}
?>
Deleteuser.php
<?
session_start();
if ($_SESSION['rules'] == 'admin'){
$id=$_GET['id'];
$mysqli = new mysqli ("localhost", "root", "", "asteroidsd");

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
«Управление ресурсами проекта» (на примере организации ООО «ЛАКОСТЭ»)
Agile-методология в управлении проектами на примере ООО «Ресурсный центр «Академия КлассИнфо»
Aвтoмaтизaция пpoцecca вeдeния инфopмaциoннoй бaзы o дoлжнocтяx и вaкaнcияx c укaзaниeм тpeбoвaний к уpoвню знaний и нaвыкoв кaндидaтoв для гpуппы кaдpoв вoйcкoвoй чacти 3474»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
Cовершенствование управления рентабельности предприятия (на примере гуипп «бендерская типография «полиграфист»)