$totDays = cal_days_in_month(CAL_GREGORIAN,$_REQUEST['month'],$_REQUEST['year']);
$attData = $commonObj->getAttendanceData($_REQUEST['month'],$_REQUEST['year']);
`
Имя студента
<?php foreach($attData as $attk=>$attv){
$punchin = $commonObj->getTimeOfDate($attData[$attk]['punchin']);
$punchout = $commonObj->getTimeOfDate($attData[$attk]['punchout']);
$nam=$attv['name'];
?>
<tr>
<th class = "danger">
<?php echo $nam;?>
</th>
<?php for($i=1;$i<=$totDays;$i++){?>
<?php if ($commonObj->getDayOfDate($attData[$attk]['punch_time']) == $i){
echo "<td class='success' id='att_$i'>".$punchin.'-'.$punchout;?>
<table class = "table table-responsive"style = "display: none; position:relative;min-width:100px;max-width:200px; margin-top: -40px;" id = "<?php echo "det_att_".$i;?>">
<tr>
<td>Time:</td>
<td><?php echo "p"?>
</td></tr>
<tr>
<td>UID:</td>
<td><?php echo $attData[$attk]['rfid_uid'];?></td>
</tr>
</table>
<?php
}else {echo "<td class='info'>#na";}?>
</td>
<?php }?>
</tr>
<?php }?>
</tr>
</table>`
это код для отображения в сети для просмотра посещаемости .. и вот код для части базы данных для получения посещаемости ...
public function getAttendanceData($month,$year){
if (!is_numeric($month) || $month>12 || $month<1){
$this->setErrorMsg("Please Select valid month!");
header("location:viewAttendance.php");
exit;
}
$retData = array();
$fullDate = $year."-".$month;
//print_r($_SESSION);
if ($_SESSION['user_type']==1){
$sql = "
SELECT t1.*
, t2.rfid_uid
, punch_time as punchin
, t2.name
FROM tbl_attendance as t1
right
join tbl_users as t2
on t1.rfid_uid = t2.rfid_uid
WHERE YEAR(punch_time) = $year
AND MONTH(punch_time) = $month
and t2.rfid_uid ='".$_SESSION['rfid_uid']."'
";
$retData = $this->getData($sql);
}else if ($_SESSION['user_type'] == 2){
$sql = "SELECT t1.*,t2.rfid_uid,punch_time as punchin,t2.name FROM tbl_attendance as t1 right join tbl_users as t2 on t1.rfid_uid=t2.rfid_uid WHERE YEAR(punch_time) = $year AND MONTH(punch_time) = $month group by t2.rfid_uid";
$retData = $this->getData($sql);
}
return $retData;
}
просмотр изображения в Интернететаблица базы данных для посещаемостиПользователь посещаемость записывается в базу данных, но не отображается в Интернете .. пожалуйста, помогите
публичная функция getData ($ sql) {$ result = $ this-> conn-> query ($ sql); $ data = array (); if ($ result-> num_rows> 0) {// выводим данные каждой строки while ($ row = $ result-> fetch_assoc ()) {$ data [] = $ row; }
это функция, которая используется для подключения и выполнения запроса
Подобные функции оболочки часто мешают безопасности и правильности. В этом случае вы используете проблемную функцию query
вместо правильного подхода prepare
, bind_param
и execute
. Чрезвычайно важно использовать значения-заполнители вместо встраивания (вставки) данных в строку запроса. Единственная ошибка, когда туда попадают неэкранированные данные, может иметь катастрофические последствия.
ЧТО ВЫ НАПОМНИТЕ, КАК ИЗМЕНИТЬ ФУНКЦИЮ ОБЕРТЫВАНИЯ И КАЖДЫЙ РАЗ Я ПОДГОТОВЛЯЮ И ВЫПОЛНЯЮ РАЗЛИЧНЫЙ ЗАПРОС SQL
Полегче с заглавными буквами, это не круто.
Я говорю о том, что функция-оболочка мешает и скрывает происходящее. Важно, чтобы ваш код SQL был четко сформулирован, чтобы любой, кто его просматривает, мог убедиться, что он выполняется правильно и без ошибок, которые могут быть огромными недостатками, такими как ошибки SQL-инъекций.
сколько минимальных битов требуется, чтобы избежать переполнения при вычитании 2 n-битных номеров, это только n-битный или n + 1 бит
Что такое
getData
и почему он не поддерживает значения заполнителей?