диплом (1190840), страница 6
Текст из файла (страница 6)
Рисунок Б.1 – Пример структуры базы данных
Приложение В
(рекомендуемое)
Модуль счетчика электроэнергии
<?php
session_start();
setlocale(LC_ALL, 'ru_RU.utf8');
Header("Content-Type: text/html;charset=UTF-8");
$idobject = $_GET['idobject'];
$idroom = $_GET['idroom'];
include ('connect.php');
$room=mysql_query("SELECT * FROM `room` WHERE idroom = '$idroom'");
while ($row=mysql_fetch_array($room))
{$name_room=$row['name'];}
$object=mysql_query("SELECT * FROM `object` WHERE idobject = '$idobject'");
while ($row=mysql_fetch_array($object))
{$name_object = $row['name_object'];}
if (isset($_GET["id_delete"])){
$id_delete = $_GET["id_delete"];
mysql_query("DELETE FROM `$db`.`counter` WHERE `counter`.`idcounter` = '$id_delete'");}
include ('counter.html');
mysql_close();
?>
Модуль обработки задач
function task($id_rkc){
$q = mysql_query("SELECT * FROM `tasks` WHERE `idUK` = '$id_rkc' AND UK = 0");
$num_task = mysql_num_rows($q);
if ($num_task > 0){
while($num_task != 0){
$task = mysql_fetch_array($q, MYSQL_ASSOC);
if ($task[active] == 0) $checked = 'checked';
else $checked = '';
//echo ?> <li class="item">
<div class="item-row">
<div class="item-col item-col-title"> <label>
<input class="checkbox" type="checkbox"
<?= $checked; ?> >
<span><?= $task[name]; ?></span>
</label> </div>
<div class="item-col fixed item-col-actions-dropdown">
<div class="item-actions-dropdown">
<a class="item-actions-toggle-btn"> <span class="inactive">
<i class="fa fa-cog"></i>
</span> <span class="active">
<i class="fa fa-chevron-circle-right"></i>
</span> </a>
<div class="item-actions-block">
<ul class="item-actions-list">
<li>
<a class="check" href="index.php?check=<?= $task[id]; ?>"> <i class="fa fa-check"></i> </a>
</li>
<li action="" method="get" onclick="return sendForm('<?php echo $task[name]; ?>','<?php echo $task[id]; ?>')">
<a class="remove" href=""><i class="fa fa-trash-o "></i> </a></li>
</li>
<li>
<a class="edit" href="task_rkc.php?edit=<?= $task[id]; ?>"> <i class="fa fa-pencil"></i> </a>
</li>
</ul>
</div>
</div>
</div>
</div>
</li>
Модуль редактирования управляющих компаний
<?php
session_start();
setlocale(LC_ALL, 'ru_RU.utf8');
Header("Content-Type: text/html;charset=UTF-8");
include ('connect.php');
if (isset($_POST["add"]))
{
$identifikator = $_POST['identifikator'];
$value1 = $_POST["value1"];
$value2 = $_POST["value2"];
$year = $_POST["year"];
$month = $_POST["month"];
if ($identifikator AND $value1 AND $month AND $year)
{
$add = "INSERT INTO `$db`.`meters_data` (`idmeters_data`, `identifikator`, `date`, `value1`, `value2`, `value3`, `value4`, `value5`, `year`, `month`)
VALUES (NULL, '$identifikator', CURRENT_TIMESTAMP, '$value1', '$value2', '', '', '', '$month', '$year')";
mysql_query($add);
echo "<div class='fixed body-col'><p align='center'>Показания счетчика $identifikator успешно добавлены!</p></div>";
}
else
echo "<div class='fixed body-col'><p align='center'>Некорректно введены данные!</p></div>";
}
include ('item-editorupr.html');
mysql_close();
?>
Модуль присвоения помещений объектам учета
<?php
session_start();
setlocale(LC_ALL, 'ru_RU.utf8');
Header("Content-Type: text/html;charset=UTF-8");
function PassGen()
{
for($i=0; $i<6; $i++)
{
$password.=rand(0,9);
}
return $password;
}
$idobject = $_GET['idobject'];
if(isset($_GET["ok"]) && isset ($_SESSION["buf"])) {
$n = $_GET["ok"];
echo "<div class='fixed body-col'><p align='center'>Помещение $n успешно добавлено</p></div>";
session_unset();
}
if (isset($_POST["add_room"]))
{
include ('connect.php');
//--------------------------------
$type = $_POST['type'];
$name = $_POST['name'];
$num_human = $_POST['num_human'];
$num_room = $_POST['num_room'];
$accaunt = $_POST['accaunt'];
$FIO = $_POST['FIO'];
$email = $_POST['email'];
$par = array("(",")","-");
$tel = str_replace($par,'',$_POST["tel"]);
$floor = $_POST['floor'];
$access = $_POST['access'];
$area = $_POST['area'];
$comment = $_POST['comment'];
$password = PassGen();
$comment = $comment.'Пароль: '.$password;
//----------------------------------------
if($type == 1) {$s1 = 'selected'; }
elseif($type == 2) {$s2 = 'selected'; }
elseif($type == 3) {$s3 = 'selected'; }
elseif($type == 4) {$s4 = 'selected'; }
else $s5 = 'selected';
//---------------------------
if ($name AND $type AND $access AND $area>0 AND $num_room AND $num_human)
{
$_SESSION["buf"] = 1;
mysql_query("INSERT INTO `$db`.`room`(`idroom`, `type`, `name`, `num_human`, `num_room`, `floor`, `access`, `area`, `contractor`, `email`, `tel`, `object_idobject`, `comment`, `login`, `password`, `accaunt`, `balance`, `date_balance`, `pay_idpay`)
VALUES (Null,'$type','$name','$num_human','$num_room','$floor','$access','$area','$FIO','$email','$tel','$idobject','$comment','$accaunt',md5($password),'$accaunt','','','')");
echo '<HEAD> <META HTTP-EQUIV="REFRESH" content="1; URL=room_add.php?ok='.$name.'&idobject='.$idobject.'"> </HEAD>';
mysql_close();
exit;
}
else
echo "<div class='fixed body-col'><p align='center'>Некорректно введены данные!</p></div>";
mysql_close();
}
else $s5 = 'selected';
include ('item-editor4.html');
?>
Модуль преобразования кодировки
<?php
/*Эта функция нужна для преобразования кодировки в строке,
содержащей русские буквы. Кодировка ставится ANSI(windows 1251),
так как файл rtf понимает только ее.
Если текст только с английскими буквами, то эту
функцию применять не надо!*/
function strToHexByRtf($sString, $sEncoding = 'utf-8') {
$sString = iconv($sEncoding, 'windows-1251', $sString);
$sString = preg_replace("/([a-zA-Z0-9]{2})/", "\'$1", bin2hex($sString));
return $sString;
}
function add_zip ($name, $file, $file_name){
$zip = new ZipArchive ();
$zip->open($name, ZipArchive::CREATE);
$zip->addFile($file, $file_name);
$zip->close();
}
function file_force_download($name) {
if (file_exists($name)) {
// сбрасываем буфер вывода PHP, чтобы избежать переполнения памяти выделенной под скрипт
// если этого не сделать файл будет читаться в память полностью!
if (ob_get_level()) {
ob_end_clean();
}
// заставляем браузер показать окно сохранения файла
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($name));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($name));
// читаем файл и отправляем его пользователю
readfile($name);
exit;
}
}
function cess ($idroom)
{
if (isset($_COOKIE["user_uk"])) $idUK = $_COOKIE["user_uk"];
elseif (isset($_SESSION["user_uk"])) $idUK = $_SESSION["user_uk"];
$room=mysql_query("SELECT * FROM `room` WHERE idroom = '$idroom'");
while ($row2=mysql_fetch_array($room))
{
$accaunt=$row2['accaunt'];
$idobject=$row2['object_idobject'];
$idroom=$row2['idroom'];
$FIO=$row2['contractor'];
$num_room = $row2['name'];
}
$object=mysql_query("SELECT * FROM `object` WHERE idobject = '$idobject'");
while ($row1=mysql_fetch_array($object))
{
$dateUK = $row1['dateUK'];
$dateUK = explode("-", $dateUK);
}
$object=mysql_query("SELECT * FROM `data` WHERE object_idobject = '$idobject'");
while ($row1=mysql_fetch_array($object))
{
$city=$row1['city'];
$street=$row1['street'];
$numst=$row1['number'];
$case=$row1['case'];
}
$UK = mysql_query("SELECT * FROM `uk` WHERE idUK = '$idUK'");
while ($row1=mysql_fetch_array($UK))
{
$name_UK = $row1['name_uk'];
$FIO_uk = $row1['FIO'];
$address_UK = $row1['address'];
$inn = $row1['inn'];
$ckore = $row1['ckore'];
$kpp = $row1['kpp'];
$ks = $row1['ks'];
$ogrn = $row1['ogrn'];
$bik = $row1['bik'];
$tel = $row1['tel'];
}
$money = mysql_query("SELECT * FROM `pay` WHERE accaunt = '$accaunt'");
while ($row1=mysql_fetch_array($money))
{
$pay_money = $row1['sum'];
$pay_money_sum = $pay_money_sum + $pay_money;
}
$pay_col = array('');
$pay_sum = 0;
$rect_header = mysql_query("SELECT * FROM `rect_header` WHERE accaunt = '$accaunt'");
while ($row1=mysql_fetch_array($rect_header))
{
$idrect = $row1['idrect'];
$col = 0;
$name_col = array('');
if ($pay_sum>0 AND $pay_sum<$pay_money_sum)
{
$pay_money_sum = $pay_money_sum - $pay_sum;
$pay_sum = 0;
$pay_col = array('');
$month = $month_arry["$row1[month]"];
$year = $row1['year'];
$dateprev = "$month $year";
}
else
{
$month = $month_arry["$row1[month]"];
$year = $row1['year'];
$datesub = "$month $year";
}
$rect_body = mysql_query("SELECT * FROM `rect_body` WHERE rect_header_idrect = '$idrect'");
while ($row2=mysql_fetch_array($rect_body))
{
$pay = $row2['sum']; //присваиваем переменные
$pay_sum = $pay_sum + $pay;
$col =$col + 1;
if (!$pay_col[$col])
array_push($pay_col,$row2['sum']);
else
$pay_col[$col] = $pay_col[$col] + $row2['sum'];
array_push($name_col,$row2['name_services']);
$name_col[$col] = strToHexByRtf($name_col[$col]);
}
for ($col1=1; $col1<8; $col1++)
{
if ($pay_col[$col1])
$pay_col[$col1] = round($pay_col[$col1]*($pay_sum - $pay_money_sum)/$pay_sum,2);
















