index.php | Код | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head> <link href="http://slyweb.ru/css/commonie7.css" rel="stylesheet" type="text/css"/> <script src="js/jquery.js"></script> </head>
<script type=text/javascript> $(document).ready(function(){//Постраничный вывод на jquery $.ajax({ type: "POST", url:"page.php", data: "galery=1", cache: false, success: function(server){ $("#tabredact").html(""); $("#tabredact").append(server).fadeIn("slow"); $("#animate li").mouseover(function(){ $(this).css("font-weight","bold"); }).mouseout(function(){ $(this).css("font-weight","normal") }); } }); //Постраничный вывод на jquery $(".jqueryhref").live('click',function(){ var hr = $(this).attr("link"); page = hr.replace(/.*\?page=/ig,""); $.ajax({ type: "POST", url:"page.php", data: "galery="+page, cache: false, success: function(server){ $("#tabredact").fadeOut("slow",function(){ $("#tabredact").empty(); $("#tabredact").append(server).fadeIn("slow"); $("#animate li").mouseover(function(){ $(this).css("font-weight","bold"); }).mouseout(function(){ $(this).css("font-weight","normal") }); }); }}); return false }); }); </script>
<body class=iframe><div style="width:250px;height:150px;"> <div id="tabredact" style="display:none;margin:20px;"> </div> </body>
<style> p { margin: 8px; font-size:12px; } .selected { color:blue; } .highlight { background:yellow; } </style> </html>
|
page.php | Код | <?php class redact { public $user,$db,$pass; function redactall(){ if(!empty($_POST['galery'])) { function yandex_link_bar($page, $count, $pages_count, $show_link) { $page = $_POST['galery']; $phpself = $_SERVER['PHP_SELF']; // $show_link - это количество отображаемых ссылок; // нагляднее будет, когда это число будет парное // Если страница всего одна, то вообще ничего не выводим if ($pages_count == 1) return false; $sperator = ' '; // Разделитель ссылок; например, вставить "|" между ссылками // Для придания ссылкам стиля $style = 'style="text-decoration: none;color:#5f9cd0;font-weight:bold:"'; $begin = $page - intval($show_link / 2); unset($show_dots); // На всякий случай :) // Сам постраничный вывод // Если количество отображ. ссылок больше кол. страниц if ($pages_count <= $show_link) $show_dots = 'no'; // Вывод ссылки на первую страницу if (($begin > 2)) { echo '<a href="#" '.$style.' link='.$phpself.'?page=1 class="jqueryhref">В начало</a> '; } for ($j = 0; $j <= $show_link; $j++) // Основный цикл вывода ссылок { $i = $begin + $j; // Номер ссылки // Если страница рядом с началом, то увеличить цикл для того, // чтобы количество ссылок было постоянным if ($i < 1) continue; // Подобное находится в верхнем цикле if (!isset($show_dots) && $begin > 1) { echo ' <a href="#" '.$style.' link='.$phpself.'?page='.($begin-1).' class="jqueryhref">...</a> '; $show_dots = "no"; } // Номер ссылки перевалил за возможное количество страниц if ($i > $pages_count) break; if ($i == $page) { echo ' <a href="#" '.$style.' link="'.$phpself.'?page='.$i.'" class="jqueryhref"><b style="color:red;">'.$i.'</b></a> '; } else { echo ' <a href="#" '.$style.' link='.$phpself.'?page='.$i.' class="jqueryhref">'.$i.'</a> '; } // Если номер ссылки не равен кол. страниц и это не последняя ссылка if (($i != $pages_count) && ($j != $show_link)) echo $sperator; // Вывод "..." в конце if (($j == $show_link) && ($i < $pages_count)) { echo ' <a href="#" '.$style.' link='.$phpself.'?page='.($i+1).' class="jqueryhref">...</a> '; } } // Вывод ссылки на последнюю страницу if ($begin + $show_link + 1 < $pages_count) { echo ' <a href="#" '.$style.' link='.$phpself.'?page='.$pages_count.' class="jqueryhref">В конец</a>'; } return true; } // Конец функции
// Подключение к базе данных
$connect = mysql_connect('localhost',$this->user,$this->pass) or die(mysql_error()); $selectdb = mysql_select_db($this->db,$connect) or die(mysql_error()); mysql_query("SET NAMES 'utf8'"); mysql_query("SET CHARACTER SET 'utf8'"); // Подготовка к постраничному выводу $page = $_POST['galery']; $perpage = 5; // Количество отображаемых данных из БД if (empty($page) || ($page <= 0)) { $page = 1; } else { $page = (int) $page; // Считывание текущей страницы } // Общее количество информации $count = mysql_numrows(mysql_query("SELECT galery.info FROM galery")); $pages_count = ceil($count / $perpage); // Количество страниц // Если номер страницы оказался больше количества страниц if ($page > $pages_count) $page = $pages_count; $start_pos = ($page - 1) * $perpage; // Начальная позиция, для запроса к БД // Вызов функции, для вывода ссылок на экран
yandex_link_bar($page, $count, $pages_count, 5); echo '<br />'; $connect = mysql_connect('localhost',$this->user,$this->pass) or die(mysql_error()); $selectdb = mysql_select_db($this->db,$connect) or die(mysql_error()); mysql_query("SET NAMES 'utf8'"); mysql_query("SET CHARACTER SET 'utf8'"); $query = "SELECT galery.info FROM galery ORDER BY id DESC LIMIT ".$start_pos.', '.$perpage; $result = mysql_query($query); if($result) { echo ' <ul id="animate">'; while($res = mysql_fetch_assoc($result)) { echo '<li>"'.$res['info'].'"'; } echo '</ul>'; } yandex_link_bar($page, $count, $pages_count, 5); } } } include 'conf.php'; $page = new redact(); $page -> user = $user; $page -> pass = $pass; $page -> db = $db; $page -> redactall(); ?>
|
Нашел этот код постраничного вывода, но тут есть проблема: не работают ссылки.. почему, понять не могу, подскажите плиз
|