Advertisement
Guest User

Untitled

a guest
Feb 25th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.66 KB | None | 0 0
  1. //Выбор всех операторов, сортировка по рабочему сектору
  2. $sql = "SELECT t1.tabNo, t1.sector, t2.otdelname, t1.name, t3.date, t3.cause
  3. FROM operators as t1
  4. JOIN otdel as t2 on t1.napravlenie = t2.id
  5. LEFT JOIN day_detail as t3 on t1.tabNo= t3.tabNo
  6. WHERE rol = '1'
  7. AND admin = 0
  8. ORDER BY sector, name ASC
  9. ";
  10. $query = mysqli_query($connect,$sql); //Выполнение запроса в БД;
  11.  
  12. //Результат выполнения загоняем в массив peopInfo
  13. $i=0;
  14. $j=0;
  15. $sector1 = -1;
  16. $cols = $countDay; // количество столбцов, td - Определяется динамически, зависит от месяца (сколько дней, столько столбцов)
  17. while ($auxiliaryArr = mysqli_fetch_assoc($query))
  18. {
  19. //массив peopleInfo содержит данные: табельный номер оператора, имя оператора, № сектора, имя сектора, дату по которой вносится информация, причину изменения записи
  20. $peopleInfo[$i]['tabNo'] = $auxiliaryArr['tabNo'];
  21. $peopleInfo[$i]['name'] = $auxiliaryArr['name'];
  22. $peopleInfo[$i]['sector'] = $auxiliaryArr['sector'];
  23. $peopleInfo[$i]['otdel'] = $auxiliaryArr['otdel'];
  24. $peopleInfo[$i]['date'] = $auxiliaryArr['date'];
  25. $peopleInfo[$i]['cause'] = $auxiliaryArr['cause'];
  26.  
  27. if ($auxiliaryArr['sector'] != $sector1)
  28. {
  29. if ($i!=0)
  30. {
  31. echo '</table>';
  32. }
  33. echo '<table class = "tableEmployee" ; <colgroup> <col width = "400px"; > </colgroup>';
  34. echo "<br>";
  35. echo '<caption id="sector";> '.$peopleInfo[$j]['otdel'].' </caption>';
  36. echo '<tr>
  37. <td id="fio"; rowspan = "2";> ФИО </td>
  38. <td id="tabNo"; rowspan="2";> Табельный номер </td>
  39. <td id="day"; colspan="31"; style="background:#fffff";> Дата </td>
  40. </tr>';
  41. //Выводим в таблицу строку с датой (прим.: 01, 02, 03)
  42. $dateArr = Array(); //Вспомогательный массив
  43. $d = 1; //Нумерация дня с 1-го числа каждого месяца
  44. while ($d <= $countDay):
  45. $dateArr[$d]['day'] = $d;
  46. echo '<td id="chislo"> '.htmlspecialchars($dateArr[$d]['day']).' </td> ';
  47. $sector1= $auxiliaryArr['sector']; //присвоение "пустой" переменной значения id сектора из массива $auxiliaryArr
  48. $d++;
  49. endwhile;
  50. //цикл динамичной отрисовки таблиц
  51. }
  52. echo "<tr>";
  53. for ($td=1;$td<$cols+2;$td++)
  54. {
  55. $id[$j] = strtoupper($peopleInfo[$j]['tabNo']);
  56.  
  57. if($td == 1)
  58. {
  59. echo "<th class='fio'; title='Внести информацию по сотруднику'>".$peopleInfo[$j]['name']."</th>";
  60. echo "<th class='login';> ".strtoupper($peopleInfo[$j]['tabNo'])." </th>";
  61. } else
  62. {
  63. echo "<td class='day' >".substr($peopleInfo[$j]['cause'],0,1)."</td>";
  64. }
  65. }
  66. echo "</tr>";
  67. $i++;
  68. $j++;
  69. }
  70. echo "</table>";
  71.  
  72. <?PHP
  73. $countDay = my_calendar(array(date("Y-m-d")));
  74. function my_calendar($fill=array()){
  75. $month_names=array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
  76. if (isset($_GET['y']))
  77. $y=$_GET['y'];
  78. if (isset($_GET['m']))
  79. $m=$_GET['m'];
  80. if (!isset($y) OR $y < 1970 OR $y > 2037)
  81. $y=date("Y");
  82. if (!isset($m) OR $m < 1 OR $m > 12)
  83. $m=date("m");
  84.  
  85. $month_stamp=mktime(0,0,0,$m,1,$y);
  86.  
  87. $prev=date('?m=m&y=Y',mktime (0,0,0,$m-1,1,$y));
  88. $next=date('?m=m&y=Y',mktime (0,0,0,$m+1,1,$y));
  89. $i=0;
  90. ?>
  91.  
  92. <table class="tableMonth">
  93. <tr>
  94. <td>
  95. <table>
  96. <tr>
  97. <td align="left"><a href="<? echo $prev . " " ?>"><<<&nbsp;&nbsp;</a></td>
  98. <td id="month_year" align="center"><? echo $m.".".$y ?></td>
  99. <td align="right"><a href="<? echo $next ?>">&nbsp;&nbsp;>>></a></td>
  100. </tr>
  101. </table>
  102. </td>
  103. </tr>
  104. </table>
  105.  
  106. <?PHP
  107. echo '<hr>';
  108. if ($m == 4 || $m == 6 || $m == 9 || $m == 11){
  109. $countdays = 30;
  110. return $countdays;
  111. } elseif ($m == 2){
  112. $countdays = 28;
  113. return $countdays;
  114. } else {
  115. $countdays = 31;
  116. return $countdays;
  117. }
  118. }
  119. ?>
  120.  
  121. $id=$peopleInfo[$j]['tabNo'].'_'.$year.'_'.$mounth.'_'.$td-4;
  122. echo "<td class='day' id='$id'>".substr($peopleInfo[$j]['cause'],0,1)."</td>";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement