Route::get('/getnews', ['as' => 'ajax.getnews', 'uses' => 'AjaxController@morenews']);
public function morenews(Request $request){
$more_news = News::paginate(4);
if($request->ajax())
{
$data = ... (что конкретно сюда писать не понимаю)
return responce($data, 200);
}
}
<?
/*
* Демонстрация старого способа работы с базой данных MySQL
*/
# Соединение
mysql_connect('localhost', 'root', '') or die('Could not connect: ' . mysql_error());
# Выбор базы данных
mysql_select_db('paginate') or die('Не могу выбрать базу данных');
// количество записей, выводимых на странице
$per_page=2;
// получаем номер страницы
if (isset($_POST['page'])) $page=($_POST['page']-1); else $page=0;
// вычисляем первый оператор для LIMIT
$start=abs($page*$per_page);
?>
<?
if($_POST['ajax'] == 1) {
$data = '';
// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.
$q="SELECT * from news LIMIT $start,$per_page";
$res=mysql_query($q);
while($row=mysql_fetch_array($res)) {
$data[] = $row;
}
die(json_encode(array('res' => 'success', 'data' => $data)));
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=win-1251">
</head>
<body>
<div class="news">
<?
// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.
$q="SELECT * from news LIMIT $start,$per_page";
$res=mysql_query($q);
while($row=mysql_fetch_array($res)) {
echo ++$start.". Название новости: ".$row['heading']."<br>\n";
}
?>
</div>
<button id="showmore" data-page="2">Показа Ышо</button>
<script src="https://yastatic.net/jquery/3.1.1/jquery.min.js"></script>
<script>
$('#showmore').click(function(){
var page = parseInt($(this).attr('data-page'));
var offset = parseInt(page);
$.ajax({
type: "POST",
url: '/',
data: {'ajax' : 1, 'page' : page},
dataType: 'json',
success: function(data){
console.log(data);
if(data.res == 'success'){
$(data.data).each(function(){
$('.news').append('Название новости: ' + this.heading + '<br/>');
})
$('#showmore').attr('data-page', page+1);
}
else{
}
},
error: function(error) {
console.log(error);
},
beforeSend: function() {
console.log('loading...');
},
complete: function() {
console.log('complete!');
}
});
return false;
})
</script>
</body>
</html>