PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Без описания
Поиск в теме | Версия для печати
LORDIF
Отправлено: 08 Ноября, 2010 - 21:38:55
Частый гость
Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
У меня есть постраничная навигация, хочу чтобы каждый номер страницы был в своем квадратике, а у активной страницы, чтобы у цифры квадратик был другого цвета)))
вот моя постраничная навигация:
CODE (
htmlphp ):
скопировать код в буфер обмена
< div style= "float:left; width:80%; margin-left:20px;" >< br>
<? 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 - 5 > 0) $page5left = ' <a href="index.php?page=' . ( $page - 5 ) . '">' . ( $page - 5 ) . '</a> ' ;
if ( $page - 4 > 0) $page4left = ' <a href="index.php?page=' . ( $page - 4 ) . '">' . ( $page - 4 ) . '</a> ' ;
if ( $page - 3 > 0) $page3left = ' <a href="index.php?page=' . ( $page - 3 ) . '">' . ( $page - 3 ) . '</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 + 5 <= $total ) $page5right = ' <a href="index.php?page=' . ( $page + 5 ) . '">' . ( $page + 5 ) . '</a>' ;
if ( $page + 4 <= $total ) $page4right = ' <a href="index.php?page=' . ( $page + 4 ) . '">' . ( $page + 4 ) . '</a>' ;
if ( $page + 3 <= $total ) $page3right = ' <a href="index.php?page=' . ( $page + 3 ) . '">' . ( $page + 3 ) . '</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>' ;
// Вывод меню если страниц больше одной
if ( $total > 1)
{
echo "<div class=\" pstrnav\" >" ;
echo $pervpage . $page5left . $page4left . $page3left . $page2left . $page1left . '<font color="red"><strong>' . $page . '</strong></font>' . $page1right . $page2right . $page3right . $page4right . $page5right . $nextpage ;
echo "</div>" ;
Пытался к диву присвоить id
CODE (
html ):
скопировать код в буфер обмена
#postr_navigation a{
text-align:center;
float:left;
margin-right:5px;
padding-left:12px;
padding-right:12px;
height:25px;
padding-top:4px;
background-color:#eeeeee;
border:1px solid #dddddd;
color:#000000;
text-decoration:none;
}
#postr_navigation a:active{
text-align:center;
float:left;
margin-right:5px;
padding-left:12px;
padding-right:12px;
height:25px;
padding-top:4px;
background-color:#cccccc;
border:1px solid #d8d3e9;
color:#000000;
}
Не работает, тогда попытался каждой ссылке дать класс:
CODE (
html ):
скопировать код в буфер обмена
.postr_navigation {
text-align:center;
float:left;
margin-right:5px;
padding-left:12px;
padding-right:12px;
height:25px;
padding-top:4px;
background-color:#eeeeee;
border:1px solid #dddddd;
color:#000000;
text-decoration:none;
}
Но все-равно ничего не работает, помогите пожалуста сделать правильно.
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 21:43:02
Участник
Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008
Откуда: Украина, Мариуполь
Помог: 0 раз(а)
ОГО... какая навигация сильная...
по делу...
class="square" каждому <a>
.square {
border:1px solid black;
}
(Отредактировано автором: 08 Ноября, 2010 - 21:43:22)
LORDIF
Отправлено: 08 Ноября, 2010 - 21:51:07
Частый гость
Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
vitaliy_mad пишет: ОГО... какая навигация сильная...
А какую посоветуете, а то найти хорошую сложно
(Добавление)
vitaliy_mad пишет: по делу...
class="square" каждому <a>
.square {
border:1px solid black;
}
А чем в принципе ваш код отличается от моего?
CODE (
html ):
скопировать код в буфер обмена
.postr_navigation {
text-align:center;
float:left;
margin-right:5px;
padding-left:12px;
padding-right:12px;
height:25px;
padding-top:4px;
background-color:#eeeeee;
border:1px solid #dddddd;
color:#000000;
text-decoration:none;
}
(Отредактировано автором: 08 Ноября, 2010 - 21:53:41)
LORDIF
Отправлено: 08 Ноября, 2010 - 22:02:09
Частый гость
Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
Верхний div закрыт
CODE (
htmlphp ):
скопировать код в буфер обмена
< div style= "float:left; width:80%; margin-left:20px;" >< br>
<? php // Проверяем нужны ли стрелки назад
if ( $page != 1) $pervpage = '<a href="index.php?page=1" class="square">Первая</a> <a href="index.php?page=' . ( $page - 1 ) . '" class="square">Предыдущая</a> ' ;
// Проверяем нужны ли стрелки вперед
if ( $page != $total ) $nextpage = ' <a href="index.php?page=' . ( $page + 1 ) . '" class="square">Следующая</a> <a href="index.php?page=' . $total . '" class="square">Последняя</a>' ;
// Находим две ближайшие станицы с обоих краев, если они есть
if ( $page - 5 > 0) $page5left = ' <a href="index.php?page=' . ( $page - 5 ) . '" class="square">' . ( $page - 5 ) . '</a> ' ;
if ( $page - 4 > 0) $page4left = ' <a href="index.php?page=' . ( $page - 4 ) . '" class="square">' . ( $page - 4 ) . '</a> ' ;
if ( $page - 3 > 0) $page3left = ' <a href="index.php?page=' . ( $page - 3 ) . '" class="square">' . ( $page - 3 ) . '</a> ' ;
if ( $page - 2 > 0) $page2left = ' <a href="index.php?page=' . ( $page - 2 ) . '" class="square">' . ( $page - 2 ) . '</a> ' ;
if ( $page - 1 > 0) $page1left = ' <a href="index.php?page=' . ( $page - 1 ) . '" class="square">' . ( $page - 1 ) . '</a> ' ;
if ( $page + 5 <= $total ) $page5right = ' <a href="index.php?page=' . ( $page + 5 ) . '" class="square">' . ( $page + 5 ) . '</a>' ;
if ( $page + 4 <= $total ) $page4right = ' <a href="index.php?page=' . ( $page + 4 ) . '" class="square">' . ( $page + 4 ) . '</a>' ;
if ( $page + 3 <= $total ) $page3right = ' <a href="index.php?page=' . ( $page + 3 ) . '" class="square">' . ( $page + 3 ) . '</a>' ;
if ( $page + 2 <= $total ) $page2right = ' <a href="index.php?page=' . ( $page + 2 ) . '" class="square">' . ( $page + 2 ) . '</a>' ;
if ( $page + 1 <= $total ) $page1right = ' <a href="index.php?page=' . ( $page + 1 ) . '" class="square">' . ( $page + 1 ) . '</a>' ;
// Вывод меню если страниц больше одной
if ( $total > 1)
{
echo "<div class=\" pstrnav\" >" ;
echo $pervpage . $page5left . $page4left . $page3left . $page2left . $page1left . '<font color="red"><strong>' . $page . '</strong></font>' . $page1right . $page2right . $page3right . $page4right . $page5right . $nextpage ;
echo "</div>" ;
}
else
{
exit ( "<p>Информация по запросу не может быть извлечена, в таблице нет записей!" ) ; }
?>
</ div>
(Отредактировано автором: 08 Ноября, 2010 - 22:07:18)
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:07:14
Участник
Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008
Откуда: Украина, Мариуполь
Помог: 0 раз(а)
Вот писал для себя универсальную, но без стилей. стили прикрутить без проблем можно.
getPages (string
url ,integer
pCount , integer
pDisplay ,string
getVar ='p')
Параметры:
url - адрес страницы куда будет направлять ссылки
pCount - количество страниц всего
pDisplay - Количество отображаемых страниц
getVar - переменная Используемая в GET для передачи номера страницы
PHP:
скопировать код в буфер обмена
<?PHP
function getPages( $url , $pCount , $pDisplay , $getVar = 'p' ) {
// getPages('http://www.example.com/',155,15,'page');
if ( strpos ( $url , '?' ) !== false ) { $params = split ( '&' , $params ) ; foreach ( $params as $par ) {
if ( $name === $getVar ) continue ;
$pars [ ] = $name . '=' . $value ;
}
}
if ( isset ( $_GET [ $getVar ] ) ) $currentPage = $_GET [ $getVar ] ;
else
$currentPage = 1 ;
$startPage = $currentPage - round ( $pDisplay / 2
) ; if ( $startPage <= 0)
$startPage = 1 ;
if ( $startPage > 1) {
echo '
<a href="' . $url . '?' . $pars . ( ( strlen ( $pars ) > 0 ) ?
'&' : '' ) . $getVar . '=1" title="To page 1"><<</a> <a href="' . $url . '?' . $pars . ( ( strlen ( $pars ) > 0 ) ?
'&' : '' ) . $getVar . '=' . ( $startPage - 1 ) . '" title="To page ' . ( $startPage - 1 ) . '">< ...</a> ' ; }
for ( $i = $startPage ; ( $i < $startPage + $pDisplay ) and ( $i <= $pCount ) ; $i ++ ) {
if ( $i == $currentPage ) {
echo '<span class="curpage">' . $i . '</span> ' ;
continue ;
}
echo '<a href="' . $url . '?' . $pars . ( ( strlen ( $pars ) > 0 ) ?
'&' : '' ) . $getVar . '=' . $i . '">' . $i . '</a> ' ; }
if ( $i < $pCount ) {
echo '<a href="' . $url . '?' . $pars . ( ( strlen ( $pars ) > 0 ) ?
'&' : '' ) . $getVar . '=' . ( $i ) . '" title="To page ' . ( $i ) . '">... ></a> ' ; echo '<a href="' . $url . '?' . $pars . ( ( strlen ( $pars ) > 0 ) ?
'&' : '' ) . $getVar . '=' . ( $pCount ) . '" title="To page ' . ( $pCount ) . '">>></a> ' ; }
}
getPages( 'http://....../pages.php' , 150 , 10 , 'p' ) ;
?>
(Добавление)
LORDIF пишет: А чем в принципе ваш код отличается от моего?
не вижу назначение ссылкам классов(Отредактировано автором: 08 Ноября, 2010 - 22:07:47)
LORDIF
Отправлено: 08 Ноября, 2010 - 22:20:38
Частый гость
Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
были бы они там, было бы вообще отлично)
(Добавление)
vitaliy_mad пишет: Цитата: LORDIF пишет:
А чем в принципе ваш код отличается от моего?
не вижу назначение ссылкам классов
Если вы имеете в виду, что не прописан каждой ссылке класс, то я их просто удалил за ненадобностью, так как не работает.
(Отредактировано автором: 08 Ноября, 2010 - 22:24:54)
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:23:51
Участник
Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008
Откуда: Украина, Мариуполь
Помог: 0 раз(а)
SELECT * FROM `table
mysql_num_rows () - всего
pDisplay - выьираете сами
Поиск в теме | Версия для печати
Страниц (4): [1] 2 3 4 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTML, Дизайн & CSS »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB