仅在PHP中打印一定数量的单元格

时间:2019-03-09 18:36:38

标签: php sql database

我正在用PHP从数据库中提取一些数据,但是,如果记录号是某个值,我只想打印它。例如,如果它小于结果数11。我想进行分页。 我的数据库有大约30条特定区域的记录,但我只希望它在一页上打印10条记录。这是我的代码

   $result = $conn->query($sql);
   if ($result->num_rows > 0) {
    // output data of each row


    while($row = $result->fetch_assoc()) {
        $descriptiontype = $row["description"];
        $minorscript = implode(' ', array_slice(explode(' ', $descriptiontype), 0, 7))."<a href = 'ticket.php?id=GS" . $row["id"]. "'>...(See More)</a>";

        $currentstatus = $row["status"];

        $filevar = $row["screenshot_url"];
        if ($filevar === "") {
            $filelink = "</td><td>None</td><td>";
        }
        else {
            $filelink = "</td><td><a href='upload/" . $row["screenshot_url"] . "'>View</a></td><td>";
        }


        echo "<tr><td><a href = 'ticket.php?id=GS" . $row["id"]. "'>Edit</a></td><td>". $row["id"]. "</td><td>". $row["raised_by"]. "</td><td>" . $row["date_time"] . "</td><td><a href='" . $row["webaddress"] . "'>" . $row["webaddress"] . "</a></td><td>" . $minorscript . $filelink . "<div class = '$currentstatus'>" . $row["status"] . "</div></td></tr>"  ;
    }
    } else {
        echo "0 results";
    }

1 个答案:

答案 0 :(得分:0)

通过$ sql查询,您可以对PHP中的X和Y值执行OFFSET X FETCH NEXT Y ROWS ONLY

例如:

SELECT id, raised_by, date_time, webaddress, description, screenshot_url, owner, status 
FROM gensupport 
ORDER BY id DESC
OFFSET 10 ROWS 
FETCH NEXT 10 ROWS ONLY;

这非常适合分页,因为X会跳过X的第一个值,Y是行数。