Здравствуйте. Имеется база данных с тремя таблицами:
1. таблица с категориями categories с полями id и cat;
2. таблица с публикациями papers с полями id и content;
3. таблица со связами публикация с категориями papers_cats с полями cat_id и paper_id.
Вывожу публикации по категориям запросом: CODE ( SQL):
скопировать код в буфер обмена
"SELECT * FROM papers INNER JOIN papers_cats ON papers.id = papers_cats.paper_id WHERE papers_cats.cat_id=".(int)$_GET['id']
Задача заключается в том, что нужно вывести публикации постранично в ссылках вида http://домен/articles.php?id=(идентификатор категории)?page=(номер страницы).
PHP:
скопировать код в буфер обмена
$page=$_GET['page']; $quality=1; $limit=1; if($page<1) $page=1; $result = mysql_query("SELECT * FROM papers INNER JOIN papers_cats ON papers.id = papers_cats.paper_id WHERE papers_cats.cat_id=".(int )$_GET['id']); $pages=ceil($rows/$quality); echo $pages."<br>"; $pages++; if($page>$pages) $page=1; if(!isset($list)) $list=0; $list=--$page*$quality; $res=mysql_query("SELECT * FROM papers INNER JOIN papers_cats ON papers.id = papers_cats.papaer_id WHERE papers_cats.cat_id=".(int )$_GET['id']." LIMIT $quality OFFSET $list"); for($i=0; $i<$row_offset; $i++) { echo $row['title']; } if($page>=1) { echo '<a href="/articles.php?id='.$row['id'].'?page=1?id='.$k.'"><<</a>'; echo '<a href="/articles.php?id='.$row['id'].'?page='.$page.'">< </a>'; } $start=($page+1)-$limit; $end=($page+1)+$limit; for($j=1; $j<$pages; $j++) { if($j>=$start && $j<=$end) { if($j==($page+1)) { echo '<a href="/articles.php?id='.$row['id'].'?page='.$j.'"><strong>'.$j.'</strong></a>'; } else { echo '<a href="/articles.php?id='.$row['id'].'?page='.$j.'">'.$ .'</a>';} } } if($j>$page && ($page+2)<$j) { echo '<a href="/articles.php?id='.$row['id'].'?page='.($page+2).'"> ></a>'; echo '<a href="/articles.php?id='.$row['id'].'?page='.($j-1).'">>></a>'; }
При этом скрипт работает только если заранее в запросе указать идентификатор категории вместо (int)$_GET['id'] и убрать структуру ?id= из формирования ссылок. Помогите решить проблему. Не туп в программировании, но в php профан. Заранеее спасибо.(Отредактировано автором: 11 Мая, 2016 - 09:02:31)
|