Здраствуйте! У меня такая ситуация.Я начинающий сделал небольшой сложности сайт и хотел сделать постраничную навигацию,нашол много скриптов,но в моем случае они не помогут. Вот вопрос? У меня 1 страничка в материалах и там 30 фотографий и я туда тулил постраничную навигацию,но потом понял ошибку ведь страничка та одна,вот и выводит 1,скажите можно сделать какуето привязку к фотографиям или что-то ещё,чтоб выводило по 5 фотографий,а не сразу все 30? Если кто сможет напиште,заранее благодарен)...
Привязку сделать можно и способов может быть сколько угодно, но конкретный пример реализации зависит от того, что у тебя там есть...
Пагинаторов вагон и маленькая тележка. Представьте, что страничек у вас не пять а пять тысяч и подумайте, какой именно пагинатор Вам нужен
Killer_S Если делать с одной страницей, то лучше всего подойдет AJAX. Отправляется скрипту номер страницы, рассчитывается сдвиг и выбираются соответствующие данные, которые потом отправляются назад. Хотя при таком подходе точно так же (с таким же успехом) делается самый обычный пагинатор через передачу методом GET номера страницы.
Всем добрый день! Тут вот возникла проблемка. Есть постраничная навигация и есть такая структура: 1. Есть главная страничка в которую по нажатию пунктов меню инклудом вставляю нужные мне файлы. 2. Через условие, что если GET пустой, то инклужу файл news.php 3. А в файле news.php пытаюсь сделать постраничную навигацию новостей, но ничего не выходит. Например при нажатии на 2 страничку, он мне грузит файл 2.php Я так понимаю, что в скрипте навигации, нужно как-то по хитрому прописать ссылки на странички, но вот как не соображу =/ Вот структура файла index.php: PHP: <?php include('php/variables.php'); include('php/base_menu.php'); //Файл меню if($site_page=='SNTO'){header('Location: SNTO/'); exit;} elseif($site_page=='students'){header('Location: students/'); exit;} elseif($site_page=='main_directions'){header('Location: Sciense/'); exit;} elseif($site_page=='library'){header('Location: library/'); exit;} elseif($site_page=='tool'){header('Location: gallery/tool.php'); exit;} elseif($site_page=='other'){header('Location: gallery/other.php'); exit;} if($site_page=='') { $site_page='news'; // определим если $_GET[page] пустая то выведем news //Вывод навигации и строки в <title> $title='Кафедра МТ2'; //Строка для <title> $nav='Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"'; } else if($site_page=='search'){ $title='Кафедра МТ2'; //Строка для <title> $nav='Вы находитесь на официальном сайте кафедры "Инструментальная техника и технологии"'; } else{ foreach($pages as $main => $submenu){ foreach($submenu as $key => $value){ if($site_page==$key){ $nav='<a href="./index.php" target="_self">Главная</a> / '.$main.' / '.$value; $title='Кафедра МТ2 - '.$value; } } } } //Конец include('header.inc'); include('nav.php'); include($site_page.'.php'); include('menu.php'); include('footer.inc'); ?> Файл news.php PHP: <!-- News --> <?php include('php/config.php'); //Постраничный вывод // Переменная хранит число сообщений выводимых на станице $num = 1; // Извлекаем из URL текущую страницу $page = $_GET['page']; // Определяем общее число сообщений в базе данных $result = mysql_query("SELECT COUNT(*) FROM news"); $posts = mysql_result($result,0); // Находим общее число страниц $total = intval(($posts - 1) / $num) + 1; // Определяем начало сообщений для текущей страницы $page = intval($page); // Если значение $page меньше единицы или отрицательно // переходим на первую страницу // А если слишком большое, то переходим на последнюю if(empty($page) or $page < 0) $page = 1; if($page > $total) $page = $total; // Вычисляем начиная к какого номера // следует выводить сообщения $start = $page * $num - $num; // Выбираем $num сообщений начиная с номера $start $result = mysql_query("SELECT head, main_text, date FROM news ORDER BY news_id DESC LIMIT $start, $num"); ?> <div id="news"> <p align="right"><a href="old_news.html" style="text-decoration:underline; color:#00F" target="_new">Архив новостей</a></p> <?php // В цикле переносим результаты запроса в массив $postrow while(list($head, $main_text, $date) = mysql_fetch_row($result)) { $news = "<div>\n <h4>".$head."</h4>\n ".$main_text."\n <p class='date'>Дата публикации: ".$date."</p>\n </div>"; echo ($news); } // Конец вывода ?> <div id="paging"> <div id="pages" align="center"> <?php // Проверяем нужны ли стрелки назад if ($page != 1) $pervpage = '<a href= index.php?page=1>Первая</a> <a href= index.php?page='. ($page - 1) .'><</a> '; // Проверяем нужны ли стрелки вперед if ($page != $total) $nextpage = ' <a href= index.php?page='. ($page + 1) .'>></a> <a href= index.php?page=' .$total. '>Последняя</a>'; // Находим две ближайшие станицы с обоих краев, если они есть if($page - 2 > 0) $page2left = ' <a href= index.php?page='. ($page - 2) .'>'. ($page - 2) .'</a> '; if($page - 1 > 0) $page1left = '<a href= index.php?page='. ($page - 1) .'>'. ($page - 1) .'</a> '; if($page + 2 <= $total) $page2right = ' <a href= index.php?page='. ($page + 2) .'>'. ($page + 2) .'</a>'; if($page + 1 <= $total) $page1right = ' <a href= index.php?page='. ($page + 1) .'>'. ($page + 1) .'</a>'; // Вывод меню echo $pervpage.$page2left.$page1left.'<a href= index.php?page='.$page.' class="current">'.$page.'</a>'.$page1right.$page2right.$nextpage; ?> </div> </div> </div><!--End NEWS -->