gpt4 book ai didi

php while循环不显示15行之后的行

转载 作者:行者123 更新时间:2023-11-29 15:15:06 25 4
gpt4 key购买 nike

您好,我有两个文件,一个文件包含主要帖子,第二个文件包含加载更多帖子代码

以下是主文件的代码,但在这个文件中我有一个问题,我必须在 php 中循环我的所有 mysql 行,我可以使用 while 循环来完成它,但是当我尝试这个时,我得到了所有行,但在 15 之后它仅显示 15 行之后的行,例如仅显示 16 行

我的main.php代码

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nv_name_split = str_replace('_', ' ', $row['novel_name']);
echo '<br><a href="episode?novel='.$row['novel_name'].'&episode='.$row['episode_num'].'"><figure class="snip1253"><div class="image"><img width="100%"src="images/sneakpeaks/'.$row['sneak_peak'].'" alt="sample59"/></div><figcaption>'.
'<div class="date"><span class="day">'.$row['day'].'</span><span class="month">'.$row['month'].'</span></div><h3>Episode # '.$row['episode_num'].'</h3> <footer>
<div class="writer text-center"><i class="fa fa-book"> '.$nv_name_split.'</i></div>
<div class="love"><i class="fa fa-thumbs-up"></i>'.$row['likes'].'</div>
<div class="comments"><i class="fa fa-comments"></i>'.$row['comments'].'</div></footer></figure></a></figcaption><br><br>';
}
?>
<?php
$stmt_count = $novel_list->runQuery("SELECT episode_num
FROM posts
WHERE just_skpk='0'");
$stmt_count->execute();
while ($rows = $stmt_count->fetch(PDO::FETCH_ASSOC)) {
$count_row = $rows['episode_num'];
}
if ($limit < $count_row) {
echo'<form id="frm_more_post">
<center>
<button type="submit" class="form-control btn btn-load_more" id="frm_btn_more">Load More Posts</button>
</center>
</form>
<br>
<br>';
}else{
echo'<form id="frm_more_post">
<center>
<button type="submit" disabled class="disabled form-control btn btn-load_more" id="frm_btn_more">No More Posts</button>
</center>
</form>
<br>
<br>';
}

这是我的 load_more.php 代码,我在其中使用 ajax 发布帖子限制

load_more.php代码

$novel_list = new USER();

if (isset($_POST['page'])) {
$limit = $_POST['page']+3;
$stmt = $novel_list->runQuery("SELECT *
FROM posts
WHERE just_skpk='0'
ORDER BY id DESC
LIMIT $limit");
$stmt->execute();
if ($stmt->rowCount(0)) {
echo '<input class="hidden" id="pages" value="'.$limit.'"/>';

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nv_name_split = str_replace('_', ' ', $row['novel_name']);
echo '<br><a data-pages="'.$limit.'" href="episode?novel='.$row['novel_name'].'&episode='.$row['episode_num'].'"><figure class="snip1253"><div class="image"><img width="100%"src="images/sneakpeaks/'.$row['sneak_peak'].'" alt="sample59"/></div><figcaption>'.

'<div class="date"><span class="day">'.$row['day'].'</span><span class="month">'.$row['month'].'</span></div><h3>Episode # '.$row['episode_num'].'</h3> <footer>

<div class="writer text-center"><i class="fa fa-book"> '.$nv_name_split.'</i></div>

<div class="love"><i class="fa fa-thumbs-up"></i>'.$row['likes'].'</div>

<div class="comments"><i class="fa fa-comments"></i>'.$row['comments'].'</div></footer></figure></a></figcaption><br><br>';

}

$stmt_count = $novel_list->runQuery("SELECT episode_num
FROM posts
WHERE just_skpk='0'");

$stmt_count->execute();

while ($rows == $stmt_count->fetch(PDO::FETCH_ASSOC)) {
$count_row = $rows['episode_num'];
}
if ($limit < $count_row) {
echo '<form id="frm_more_post">
<center>
<button type="submit" class="form-control btn btn-load_more" id="frm_btn_more">Load More Posts</button>
</center>
</form>
<br>
<br>';
}else{
echo '<form id="frm_more_post">
<center>
<button type="submit" disabled class="disabled form-control btn btn-load_more" id="frm_btn_more">No More Posts</button>
</center>
</form>
<br>
<br>';
}
}else{
echo 0 ;
}
}

我在 while 循环中使用 double == 解决了 main.php while 循环中的第一个问题,但在 load_more.php 文件中我无法显示更多帖子按钮,它显示为禁用,但是当我数据库中的行数少于 15 行时,它工作正常,请帮助我在 load_more.php 中显示加载更多帖子按钮。

谢谢你,任何帮助将不胜感激。

最佳答案

在您的代码中,您得到的 Episode_num 为 $count_row,但它应该是没有行。尝试下面的代码

$novel_list = new USER();

if (isset($_POST['page'])) {
$limit = $_POST['page']+3;
$stmt = $novel_list->runQuery("SELECT *
FROM posts
WHERE just_skpk='0'
ORDER BY id DESC
LIMIT $limit");
$stmt->execute();
if ($stmt->rowCount(0)) {
echo '<input class="hidden" id="pages" value="'.$limit.'"/>';

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nv_name_split = str_replace('_', ' ', $row['novel_name']);
echo '<br><a data-pages="'.$limit.'" href="episode?novel='.$row['novel_name'].'&episode='.$row['episode_num'].'"><figure class="snip1253"><div class="image"><img width="100%"src="images/sneakpeaks/'.$row['sneak_peak'].'" alt="sample59"/></div><figcaption>'.

'<div class="date"><span class="day">'.$row['day'].'</span><span class="month">'.$row['month'].'</span></div><h3>Episode # '.$row['episode_num'].'</h3> <footer>

<div class="writer text-center"><i class="fa fa-book"> '.$nv_name_split.'</i></div>

<div class="love"><i class="fa fa-thumbs-up"></i>'.$row['likes'].'</div>

<div class="comments"><i class="fa fa-comments"></i>'.$row['comments'].'</div></footer></figure></a></figcaption><br><br>';

}

$stmt_count = $novel_list->runQuery("SELECT count(*) as cnt
FROM posts
WHERE just_skpk='0'");

$stmt_count->execute();

while ($rows = $stmt_count->fetch(PDO::FETCH_ASSOC)) {
$count_row = $rows['cnt'];
}
if ($limit < $count_row) {
echo '<form id="frm_more_post">
<center>
<button type="submit" class="form-control btn btn-load_more" id="frm_btn_more">Load More Posts</button>
</center>
</form>
<br>
<br>';
}else{
echo '<form id="frm_more_post">
<center>
<button type="submit" disabled class="disabled form-control btn btn-load_more" id="frm_btn_more">No More Posts</button>
</center>
</form>
<br>
<br>';
}
}else{
echo 0 ;
}
}

关于php while循环不显示15行之后的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59738723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com