<?php if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) { die; } $APPLICATION->AddHeadScript('/libs/js/angular.min.js'); $APPLICATION->AddHeadScript('/libs/js/jquery.floatThead.min.js'); $APPLICATION->AddHeadScript('/libs/js/underscore-min.js'); $APPLICATION->AddHeadScript('/libs/js/jquery.excelExport.js'); $APPLICATION->AddHeadScript('/bitrix/components/rpk/journal/ctrl.js'); $APPLICATION->AddHeadScript('/bitrix/components/rpk/journal/gettableToExcel.js'); global $USER; if (!RPRole::getPermitOne('journal')) { RPH::errorPage("Ошибка доступа"); } $MsSQL = RPDB::connect(); $link = (int) $_GET['tupd']; $gr['id'] = (int) $_GET['gr']; $iup = $_GET['iup'] ? (int) $_GET['iup'] : false; //Взять информацию о группе $gr = end(RPIrro::getGroups($gr['id'], 'group', true)); if (empty($gr)) { RPH::errorPage('Не найдена информация о группе'); } //Взять информацию о дисциплине $dis = end(RPIrro::upDises($link, 'tpd')); if ($gr['tup_id'] != $dis['pid']) { RPH::errorPage('Выбранная группа не изучает эту дисциплину'); } //Взять студентов группы $st_all = RPIrro::getStudents($gr['id']); $stud = RPU::reshape($st_all, 'numst', 'name');
<?php if (!RPRole::getPermitOne('journal_edit')) { RPH::errorPage("Ошибка доступа"); } $myPost = json_decode(file_get_contents('php://input'), true); $numst = RPU::reshape($myPost, 'numst', 'numst'); $id_km = RPU::reshape($myPost, 'id_km', 'id_km'); $MsSQL = RPDB::connect(); //Получаем существующие баллы в БД для измененных КМ и студентов $result = $MsSQL->prepare('select * from st_ball where id_km IN (' . RPU::plas($id_km) . ') and numst IN (' . RPU::plas($numst) . ')'); if (!$result->execute(array_merge($id_km, $numst))) { throw new Exception("Ошибка получения баллов"); } $balls = $result->fetchAll(PDO::FETCH_ASSOC); foreach ($myPost as $val) { // Убрано после новости о том, что можно удалять балл //if($val['ball']==='') continue; if ($val['ball'] === 'н') { $val['ball'] = -1; } $b = RPU::filterBy($balls, array('id_km' => $val['id_km'], 'numst' => $val['numst'])); if (!empty($b)) { if ($b['ball'] === $val['ball']) { continue; } $where = $val; unset($where['ball']); if ($val['ball'] === '') { if (!RPDB::delete('st_ball', $where)) { throw new Exception("Ошибка удаления бала");