Как мне решить эту проблему PHP ?
Моя проблема сохраняется в строке 98, которая является 1911 в моем файле php!
Предупреждение: mysqli_fetch_array() ожидает, что параметр 1 будет mysqli_result, логическое значение задано в H:\root\home\teamwork1-001\www\Portal\auditpdfengarnophotos.php on line 1911
while($row_typee=mysqli_fetch_array($get_typee))
<?php set_time_limit(60); include("connection.php"); $errors= array(); $data= array(); $get_auditorcustomers=mysqli_query($con,"select * from auditorcustomer where id='".$_GET['customeraudit']."'"); $row_auditorcustomers=mysqli_fetch_array($get_auditorcustomers); $get_lasttwoid=mysqli_query($con,"select distinct id from auditorcustomer where customer='".$row_auditorcustomers['customer']."' and location='".$row_auditorcustomers['location']."' and category='".$_GET['category']."' and status='1' and completed='1' order by id desc limit 6 "); if(!$get_lasttwoid){$errors['name'] = 'error.';} if ( ! empty($errors)) { $data['success'] = false; $data['errors'] = $errors; } else { $data['success'] = true; $data['message'] = 'Success!'; $atte=array(); while($row_lasttwoid=mysqli_fetch_array($get_lasttwoid)){ $get_auditinfo=mysqli_query($con,"select * from customeraudit where auditorcustomer='".$row_lasttwoid['id']."'"); $row_auditinfo=mysqli_fetch_array($get_auditinfo); $get_customerauditt4=mysqli_query($con,"select * from auditapplication where customeraudit='".$row_lasttwoid['id']."' and response='0' "); $row_customerauditt41=mysqli_fetch_array($get_customerauditt4); $array_type4=array(); $array_audit4=array(); while($row_customerauditt4=mysqli_fetch_array($get_customerauditt4)){ $array_audit4[]=$row_customerauditt4['audit']; $get_audit4=mysqli_query($con,"select distinct type from auditform where id='".$row_customerauditt4['audit']."' "); $row_audit4=mysqli_fetch_array($get_audit4); $array_type4[]=$row_audit4['type']; } $get_typee=mysqli_query($con, "select * from audittype where id in (".implode(",",array_unique($array_type4)).")"); $levelNATotal=0;$totalscore=0;$totalpercentage=0;$levelZeroTotal=0; $count=0; <big>while($row_typee=mysqli_fetch_array($get_typee))</big> { $levelNATotal=0; $levelZeroTotal=0; $question=0; $levelTotal=0; $levelNA=0; $levelZero=0; $percentage=0; $count++; $get_auditt=mysqli_query($con,"select * from auditform where category='".$_GET['category']."' and type='".$row_typee['id']."' and status='1'"); $question=$question + mysqli_num_rows($get_auditt); $totalquestion=$totalquestion+$question; while($row_auditt=mysqli_fetch_array($get_auditt)){ $get_customerauditScore=mysqli_query($con,"select * from auditapplication where customeraudit='".$row_lasttwoid['id']."' and audit='".$row_auditt['id']."' "); $row_customerauditScore=mysqli_fetch_array($get_customerauditScore); if($row_customerauditScore['response']=='-1'){ $get_LevelNA=mysqli_query($con,"select * from auditform where id='".$row_customerauditScore['audit']."'"); while($row_LevelNA=mysqli_fetch_array($get_LevelNA)){ $levelNA=$levelNA+intval($row_LevelNA['level']); } } if($row_customerauditScore['response']=='0'){ $get_LevelZero=mysqli_query($con,"select * from auditform where id='".$row_customerauditScore['audit']."'"); while($row_LevelZero=mysqli_fetch_array($get_LevelZero)){ $levelZero=$levelZero+intval($row_LevelZero['level']); } } } $levelZeroTotal=$levelZeroTotal+$levelZero; $levelNATotal=$levelNATotal+$levelNA; $get_audittLevelTotal=mysqli_query($con,"select * from auditform where category='".$_GET['category']."' and type='".$row_typee['id']."' and status='1'"); while($row_audittLevelTotal=mysqli_fetch_array($get_audittLevelTotal)){ $levelTotal=$levelTotal+intval($row_audittLevelTotal['level']);} $totalscore=$totalscore+intval(abs($levelTotal)-abs($levelZero)-abs($levelNA));$totalpercentage=$totalpercentage+$percentage; } $get_totalquestion=mysqli_query($con,"select * from auditform where category='".$_GET['category']."' and status='1'"); $levelTotall=0; $get_audittLevelTotall=mysqli_query($con,"select * from auditform where category='".$_GET['category']."' and status='1'"); while($row_audittLevelTotall=mysqli_fetch_array($get_audittLevelTotall)){ $levelTotall=$levelTotall+intval($row_audittLevelTotall['level']);} array_push($atte, array("label" => $row_auditinfo['dates'],"y" => number_format($totalscore/abs($levelTotall-intval($levelNATotal))*100,2))); }} /*$data['allatte']= $atte; } echo json_encode($data); ob_end_flush(); */ $dataPoints1 = array( array("x" => "2018-07-21", "y" => 67.80), array("x" => "2018-07-13", "y" => 67.45), array("x" => "2018-06-22", "y" => 70.63) ); ?>
Что я уже пробовал:
в то время как($row_typee=mysqli_fetch_array($get_typee,MYSQLI_ASSOC))
Я пытался добавить это!
Пожалуйста, если кто-то может изменить это для меня и научить меня, в чем причина !
Richard Deeming
Ваш код уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
Все, что вы хотели знать о SQL-инъекции (но боялись спросить) | Трой Хант[^]
Как я могу объяснить SQL-инъекцию без технического жаргона? | Обмен Стеками Информационной Безопасности[^]
Шпаргалка по параметризации запросов | OWASP[^]
PHP: SQL-инъекция - руководство пользователя[^]