Sql Query inside while loop making my application very slow.
<ul>
<?php
$sql1 = "SELECT cat_id,cat_name FROM all_services where uni_id='$uni_id'";
$sql_query = mysqli_query($conn,$sql1);
while($display_class = mysqli_fetch_assoc($sql_query))
{
$class_id = $display_class['cat_id'];
?>
<li>
<i class="fa fa-plus"></i>
<label>
<input id="1" data-id="1" type="checkbox" value="<?php echo "$class_id"; ?>"/><?php echo $display_class['cat_name']; ?>
</label>
<ul>
<?php $sql2 = mysqli_query($conn,"SELECT roll_no,st_name,st_mobile,st_dob FROM student_info where school_uni_id='$uni_id' and st_class='$class_id' order by roll_no + 0 ASC, st_name ASC");
while($display_stu = mysqli_fetch_assoc($sql2))
{
?>
<li>
<label>
<input class="treenode" id="xnode-0-1-1" data-id="custom-0-1-1" type="checkbox" value="<?php echo $display_stu['st_mobile']; ?>,<?php echo $display_stu['st_dob']; ?>" /><?php echo $display_stu['roll_no']; ?> <?php echo $display_stu['st_name']; ?>
</label>
</li>
<?php } ?>
</ul>
</li>
<?php } ?>
</ul>
Both sql query is linked to each other, I need $class_id
from first query $sql1
to put in second query i.e $sql2
.
While loop inside while loop making it very slow.
It works fine if query result is upto 1000rows but above 2000rows application become very slow. How to make my application fast?