gpt4 book ai didi

PHP 分页删除搜索词并恢复显示所有结果,修复了吗?

转载 作者:太空宇宙 更新时间:2023-11-03 11:49:06 25 4
gpt4 key购买 nike

搜索特定类(class)后,结果会正确显示,但一旦我更改页面,它就会恢复显示所有可用结果。如何保留搜索词结果?

这是代码

<?php

$con = mysqli_connect("localhost", "root", "root", "courses");

// $total = mysqli_query($con, "SELECT count(title) as total")->fetch()['total']);


if(isset($_GET['searchword'])){
$searchword = $_GET['searchword'];
}
else {
$searchword = "";
}

$result = mysqli_query($con, "SELECT count(title) FROM course WHERE title LIKE '$searchword%'");
$row = mysqli_fetch_row($result);

// Total rows.
$rowstotal = $row[0];

//pages
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = isset($_GET['per-page']) && $_GET['per-page'] <= 100 ? (int)$_GET['per-page'] : 10;

$start = ($page > 1) ? ($page * $perPage) - $perPage : 0;

$pages = $rowstotal / $perPage;

$sql = "SELECT * FROM course WHERE title LIKE '%$searchword%' ORDER BY title ASC LIMIT {$start},{$perPage}";

$query = mysqli_query($con, $sql);

$resultsText = "$rowstotal results";

$resultsList = '';

while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){
$courseId = $row["id"];
$courseAward = $row["award"];
$courseName = $row["title"];
$courseDetails = $row["summary"];
$resultsList .= '<a href="course-page.php?id='.$courseId.'">'.$courseAward.' '.$courseName.'</a> <br>'.$courseDetails.'<br/>';
}

mysqli_close($con);

?>







<!DOCTYPE html>
<html lang="en">
<head>
<title>Courses</title>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>

<nav class="navbar navbar-default navbar-static-top navbar-inverse">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="#">
<img alt="Napier" src="">
</a>
</div>
</div>
</nav>

<div class="container">

<!-- Search -->
<form method="GET">
<input type="text" class="form-control" name="searchword" placeholder="Search" value="<?php echo $searchword ?>" style="width:30%;"><br>
</form>

<!-- Results -->
<div class="results">
<p></p>
<p>Showing <?php echo $perPage; ?> of <?php echo $resultsText; ?></p>
<p id="content"><?php echo $resultsList; ?></p>
</div>
<div class="pagination">
<?php for($x = 1; $x <= $pages; $x++): ?>
<a href="?page=<?php echo $x; ?>&per-page=<?php echo $perPage; ?>"<?php if($page === $x) { echo ' class="selected"'; } ?>><?php echo $x; ?></a>
<?php endfor; ?>
</div>


</div>

<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.3.min.js"></script>

</body>
</html>

最佳答案

您的页面链接不保留 searchword 参数。改变这个:

<a href="?page=<?php echo $x; ?>&per-page=<?php echo $perPage; ?>"<?php if($page === $x) { echo ' class="selected"'; } ?>><?php echo $x; ?></a>

为此:

<a href="?page=<?php echo $x; ?>&per-page=<?php echo $perPage; ?>&searchword=<?php echo $searchword; ?>"<?php if($page === $x) { echo ' class="selected"'; } ?>><?php echo $x; ?></a>

关于PHP 分页删除搜索词并恢复显示所有结果,修复了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36635164/

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