Sanuka Hasith Sanuka Hasith - 13 days ago 6
PHP Question

How to loop a table view in codeigniter

I wnet through questions but cannot get it done
Using CodeIgniter is it bad practice to load a view in a loop

from my

controller
i call my
model
and get an array ,
then i want to pass it to my view and i did that.

i loop through it and got the data inside the array
i want to create a view for each item in the array and display them(like a list )

<?php

$dataNumRows = count($database_data);
for ($i = 0; $i < $dataNumRows; $i++) {
$rows = array_values($database_data)[$i];
$rawID = $rows["id"];
$rawLink = $rows["link"];
$rawHeading = $rows["heading"];
$rawSubmitBy = $rows["submit_by"];
echo $rawLink;
echo $rawID;
echo $rawHeading;
echo $rawSubmitBy;
echo "******<br>";
}
?>


<table style="width:40%">

<tr>
<td colspan="1"></td>
<td colspan="5">up vote</td>
<td colspan="5"></td>
</tr>
<tr>
<td colspan="1"><?php echo $rawID ?></td>
<td colspan="5"><?php echo $rawLink ?></td>
<td colspan="5">submitted by<?php echo $rawSubmitBy ?></td>
</tr>
<tr>
<td colspan="1"></td>
<td colspan="5">down vote</td>
<td colspan="5">view comments</td>
</tr>
</table>

</body>
</html>


This table is the view i need to recall each time my loop runs
eg: 10 elements in array --> 10 table views

but this way i get only last element data as a single table view because i create table after the loop

how can i loop my table view inside the loop to get N number of tables (N= elements of array)?

Answer

you can try this stop php , add your table, and resume php , inside your loop

this should work !

<!-- print the key as a var form the array data that passed from controller-->
<!--<h1> Hello --><?php //echo $keyName;?><!-- </h1>-->

<!DOCTYPE html>
<html>
<head>
</head>
<body>

<!--use the key-->
<!--<h1> Hello --><?php //echo $profile["fullName"]; ?><!-- </h1>-->


<?php
$dataNumRows = count($database_data);
for ($i = 0; $i < $dataNumRows; $i++) {
    $rows = array_values($database_data)[$i];
    $rawID = $rows["id"];
    $rawLink = $rows["link"];
    $rawHeading = $rows["heading"];
    $rawSubmitBy = $rows["submit_by"];
    echo $rawLink;
    echo $rawID;
    echo $rawHeading;
    echo $rawSubmitBy;
    echo "******<br>";

    /* this will temporarily "stop" php --> */ ?>
    <table style="width:40%">

        <tr>
            <td colspan="1"></td>
            <td colspan="5">up vote</td>
            <td colspan="5"></td>
        </tr>
        <tr>
            <td colspan="1"><?php echo $rawID ?></td>
            <td colspan="5"><?php echo $rawLink ?></td>
            <td colspan="5">submitted by<?php echo $rawSubmitBy ?></td>
        </tr>
        <tr>
            <td colspan="1"></td>
            <td colspan="5">down vote</td>
            <td colspan="5">view comments</td>
        </tr>
    </table>
    <?php /* <-- php resumes now */

}
?>


</body>
</html>
Comments