Load More Data проблем

noxious

Registered
Здравейте!

Правя зареждане на още данни от базата данни чрез такъв бутон, но нещо не се получава. Като кликна на Load more бутона, зарежда следващата новина но само нея, т.е. колкото пъти кликна на Load more толкова пъти зарежда една и съща новина. Не работи нещо.

PHP:
<?php
include "../config.php";

$results_per_page = 1;

if (isset($_POST['page'])) {
	$page = $_POST['page'];
	$sql = "SELECT * FROM `news` ORDER BY `sort` DESC";
	if($page > 0) {
		$page_limit = $results_per_page * ($page - 1);
		$sql .= " LIMIT :page_limit, :results_per_page";
	} else {
		$sql .= " LIMIT 0, :results_per_page";
	}
	$stmt = $dbh->prepare($sql);
	$stmt->bindParam(':page_limit', $page_limit, PDO::PARAM_INT);
	$stmt->bindParam(':results_per_page', $results_per_page, PDO::PARAM_INT);
	$stmt->execute();
	$rows = $stmt->rowCount();
	
	if ($rows > 0) {
		while ($row_news = $stmt->fetch(PDO::FETCH_ASSOC)) {
		?>
		<li id="recordsArray_<?php echo $row_news['id']; ?>">
			<?php echo $row_news['title']; ?>
			<a href="news.php?edit-news=<?php echo $row_news['id']; ?>"><span class="glyphicon glyphicon-edit"></span></a>
			<a href="news.php?delete-news=<?php echo $row_news['id']; ?>"><span class="glyphicon glyphicon-remove"></span></a>
		</li>
		<?php
		}
	}
	if ($rows == $results_per_page) {
		echo '<li class="loadbutton"><button class="loadmore" data-page="'.$page.'+1">Load More</button></li>';
	} else {
		echo '<li class="loadbutton"><h3>No More Feeds</h3></li>';
	}
}
 
Логиката ти отново ми се струва грешна. :D

Не ти трябва това data-page="'.$page.'+1". По този начин няма да се извърши събиране.

Може би така

PHP:
data-page="'.($page+1).'"

или проверката я правиш след това. Имам предвид, че ти при всяко извикване ъпдейтваш $page. Това, което ти предлагам да направиш е, да ъпдейтваш $page още в началото на стейтмънта. По този начин можеш да добавяш само $page в data-page.


PHP:
if (isset($_POST['page'])) {

	$page = (int)$_POST['page']+1;

//....
echo '<li class="loadbutton"><button class="loadmore" data-page="'.$page.'">Load More</button></li>';

Другия ми съвет е да избягвай да хардкодваш HTML в PHP, защото някой ден това ще ти изиграе лоша шега.
Ориентирай се към някой MVC фреймуорк и научи шаблона. Свикнеш ли с него, работата ти ще олекне.
 

Back
Горе