Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: css стили

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (4): [1] 2 3 4 »   

> Без описания
LORDIF
Отправлено: 08 Ноября, 2010 - 21:38:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




У меня есть постраничная навигация, хочу чтобы каждый номер страницы был в своем квадратике, а у активной страницы, чтобы у цифры квадратик был другого цвета)))
вот моя постраничная навигация:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <div style="float:left; width:80%; margin-left:20px;"><br>
  2. <?php // Проверяем нужны ли стрелки назад
  3. if ($page != 1) $pervpage = '<a href="index.php?page=1">Первая</a> &nbsp; <a href="index.php?page='. ($page - 1) .'">Предыдущая</a> &nbsp; ';
  4. // Проверяем нужны ли стрелки вперед
  5. if ($page != $total) $nextpage = ' &nbsp; <a href="index.php?page='. ($page + 1) .'">Следующая</a> &nbsp; <a href="index.php?page=' .$total. '">Последняя</a>';
  6.  
  7. // Находим две ближайшие станицы с обоих краев, если они есть
  8. if($page - 5 > 0) $page5left = ' <a href="index.php?page='. ($page - 5) .'">'. ($page - 5) .'</a> &nbsp; ';
  9. if($page - 4 > 0) $page4left = ' <a href="index.php?page='. ($page - 4) .'">'. ($page - 4) .'</a> &nbsp; ';
  10. if($page - 3 > 0) $page3left = ' <a href="index.php?page='. ($page - 3) .'">'. ($page - 3) .'</a> &nbsp; ';
  11. if($page - 2 > 0) $page2left = ' <a href="index.php?page='. ($page - 2) .'">'. ($page - 2) .'</a> &nbsp; ';
  12. if($page - 1 > 0) $page1left = ' <a href="index.php?page='. ($page - 1) .'">'. ($page - 1) .'</a> &nbsp; ';
  13.  
  14. if($page + 5 <= $total) $page5right = ' &nbsp; <a href="index.php?page='. ($page + 5) .'">'. ($page + 5) .'</a>';
  15. if($page + 4 <= $total) $page4right = ' &nbsp; <a href="index.php?page='. ($page + 4) .'">'. ($page + 4) .'</a>';
  16. if($page + 3 <= $total) $page3right = ' &nbsp; <a href="index.php?page='. ($page + 3) .'">'. ($page + 3) .'</a>';
  17. if($page + 2 <= $total) $page2right = ' &nbsp; <a href="index.php?page='. ($page + 2) .'">'. ($page + 2) .'</a>';
  18. if($page + 1 <= $total) $page1right = ' &nbsp; <a href="index.php?page='. ($page + 1) .'">'. ($page + 1) .'</a>';
  19. // Вывод меню если страниц больше одной
  20. if ($total > 1)
  21. {
  22. Error_Reporting(E_ALL & ~E_NOTICE);
  23. echo "<div class=\"pstrnav\">";
  24. echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<font color="red"><strong>'.$page.'</strong></font>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
  25. echo "</div>";

Пытался к диву присвоить id
CODE (html):
скопировать код в буфер обмена
  1. #postr_navigation a{
  2. text-align:center;
  3. float:left;
  4. margin-right:5px;
  5. padding-left:12px;
  6. padding-right:12px;
  7. height:25px;
  8. padding-top:4px;
  9. background-color:#eeeeee;
  10. border:1px solid #dddddd;
  11. color:#000000;
  12. text-decoration:none;
  13. }
  14.  
  15. #postr_navigation a:active{
  16. text-align:center;
  17. float:left;
  18. margin-right:5px;
  19. padding-left:12px;
  20. padding-right:12px;
  21. height:25px;
  22. padding-top:4px;
  23. background-color:#cccccc;
  24. border:1px solid #d8d3e9;
  25. color:#000000;
  26. }

Не работает, тогда попытался каждой ссылке дать класс:
CODE (html):
скопировать код в буфер обмена
  1. .postr_navigation {
  2. text-align:center;
  3. float:left;
  4. margin-right:5px;
  5. padding-left:12px;
  6. padding-right:12px;
  7. height:25px;
  8. padding-top:4px;
  9. background-color:#eeeeee;
  10. border:1px solid #dddddd;
  11. color:#000000;
  12. text-decoration:none;
  13. }

Но все-равно ничего не работает, помогите пожалуста сделать правильно.
 
 Top
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 21:43:02
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




ОГО... какая навигация сильная...

по делу...
class="square" каждому <a>

.square {
border:1px solid black;
}

(Отредактировано автором: 08 Ноября, 2010 - 21:43:22)

 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 21:51:07
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




vitaliy_mad пишет:
ОГО... какая навигация сильная...

А какую посоветуете, а то найти хорошую сложно
(Добавление)
vitaliy_mad пишет:
по делу...
class="square" каждому <a>

.square {
border:1px solid black;
}

А чем в принципе ваш код отличается от моего?
CODE (html):
скопировать код в буфер обмена
  1. .postr_navigation {
  2. text-align:center;
  3. float:left;
  4. margin-right:5px;
  5. padding-left:12px;
  6. padding-right:12px;
  7. height:25px;
  8. padding-top:4px;
  9. background-color:#eeeeee;
  10. border:1px solid #dddddd;
  11. color:#000000;
  12. text-decoration:none;
  13. }

(Отредактировано автором: 08 Ноября, 2010 - 21:53:41)

 
 Top
DeepVarvar Супермодератор
Отправлено: 08 Ноября, 2010 - 21:59:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Див с стайлом открытый сверху не закрыт снизу... Или это просто не весь код?
 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:02:09
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Верхний div закрыт
CODE (htmlphp):
скопировать код в буфер обмена
  1. <div style="float:left; width:80%; margin-left:20px;"><br>
  2. <?php // Проверяем нужны ли стрелки назад
  3. if ($page != 1) $pervpage = '<a href="index.php?page=1" class="square">Первая</a> &nbsp; <a href="index.php?page='. ($page - 1) .'" class="square">Предыдущая</a> &nbsp; ';
  4. // Проверяем нужны ли стрелки вперед
  5. if ($page != $total) $nextpage = ' &nbsp; <a href="index.php?page='. ($page + 1) .'" class="square">Следующая</a> &nbsp; <a href="index.php?page=' .$total. '" class="square">Последняя</a>';
  6.  
  7. // Находим две ближайшие станицы с обоих краев, если они есть
  8. if($page - 5 > 0) $page5left = ' <a href="index.php?page='. ($page - 5) .'" class="square">'. ($page - 5) .'</a> &nbsp; ';
  9. if($page - 4 > 0) $page4left = ' <a href="index.php?page='. ($page - 4) .'" class="square">'. ($page - 4) .'</a> &nbsp; ';
  10. if($page - 3 > 0) $page3left = ' <a href="index.php?page='. ($page - 3) .'" class="square">'. ($page - 3) .'</a> &nbsp; ';
  11. if($page - 2 > 0) $page2left = ' <a href="index.php?page='. ($page - 2) .'" class="square">'. ($page - 2) .'</a> &nbsp; ';
  12. if($page - 1 > 0) $page1left = ' <a href="index.php?page='. ($page - 1) .'" class="square">'. ($page - 1) .'</a> &nbsp; ';
  13.  
  14. if($page + 5 <= $total) $page5right = ' &nbsp; <a href="index.php?page='. ($page + 5) .'" class="square">'. ($page + 5) .'</a>';
  15. if($page + 4 <= $total) $page4right = ' &nbsp; <a href="index.php?page='. ($page + 4) .'" class="square">'. ($page + 4) .'</a>';
  16. if($page + 3 <= $total) $page3right = ' &nbsp; <a href="index.php?page='. ($page + 3) .'" class="square">'. ($page + 3) .'</a>';
  17. if($page + 2 <= $total) $page2right = ' &nbsp; <a href="index.php?page='. ($page + 2) .'" class="square">'. ($page + 2) .'</a>';
  18. if($page + 1 <= $total) $page1right = ' &nbsp; <a href="index.php?page='. ($page + 1) .'" class="square">'. ($page + 1) .'</a>';
  19. // Вывод меню если страниц больше одной
  20. if ($total > 1)
  21. {
  22. Error_Reporting(E_ALL & ~E_NOTICE);
  23. echo "<div class=\"pstrnav\">";
  24. echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<font color="red"><strong>'.$page.'</strong></font>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
  25. echo "</div>";
  26.  
  27. }
  28. else
  29. {
  30. exit( "<p>Информация по запросу не может быть извлечена, в таблице нет записей!");
  31. }
  32. ?>
  33. </div>

(Отредактировано автором: 08 Ноября, 2010 - 22:07:18)

 
 Top
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:07:14
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




Вот писал для себя универсальную, но без стилей. стили прикрутить без проблем можно.

getPages (string url,integer pCount, integer pDisplay,string getVar='p')

Параметры:
url - адрес страницы куда будет направлять ссылки
pCount - количество страниц всего
pDisplay - Количество отображаемых страниц
getVar - переменная Используемая в GET для передачи номера страницы

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         function getPages($url,$pCount,$pDisplay,$getVar='p') {
  3.         // getPages('http://www.example.com/',155,15,'page');
  4.                 if (strpos($url,'?')!==false) {
  5.                         list($url,$params)=split('\?',$url);
  6.                         $params=split('&',$params);
  7.                         unset($pars);
  8.                         foreach($params as $par) {
  9.                                 list($name,$value)=split('=',$par);
  10.                                 if ($name===$getVar) continue;
  11.                                 $pars[]=$name.'='.$value;
  12.                         }
  13.                         $pars=implode('&',$pars);
  14.                 }
  15.                 if (isset($_GET[$getVar]))
  16.                         $currentPage=$_GET[$getVar];
  17.                 else
  18.                         $currentPage=1;
  19.                 $startPage=$currentPage-round($pDisplay/2);
  20.                 if ($startPage<=0)
  21.                         $startPage=1;
  22.                 if ($startPage>1) {
  23.                         echo '
  24.                         <a href="'.$url.'?'.$pars.((strlen($pars)>0)?'&':'').$getVar.'=1" title="To page 1"><<</a>
  25.                         <a href="'.$url.'?'.$pars.((strlen($pars)>0)?'&':'').$getVar.'='.($startPage-1).'" title="To page '.($startPage-1).'">< ...</a> ';
  26.                 }
  27.                 for ($i=$startPage;($i<$startPage+$pDisplay) and ($i<=$pCount);$i++) {
  28.                         if ($i==$currentPage) {
  29.                                 echo '<span class="curpage">'.$i.'</span> ';
  30.                                 continue;
  31.                         }
  32.                         echo '<a href="'.$url.'?'.$pars.((strlen($pars)>0)?'&':'').$getVar.'='.$i.'">'.$i.'</a> ';
  33.                 }
  34.                 if ($i<$pCount) {
  35.                         echo '<a href="'.$url.'?'.$pars.((strlen($pars)>0)?'&':'').$getVar.'='.($i).'" title="To page '.($i).'">... ></a> ';
  36.                         echo '<a href="'.$url.'?'.$pars.((strlen($pars)>0)?'&':'').$getVar.'='.($pCount).'" title="To page '.($pCount).'">>></a> ';
  37.                 }
  38.  
  39.         }
  40.  
  41. getPages('http://....../pages.php',150,10,'p');
  42.  
  43. ?>

(Добавление)
LORDIF пишет:
А чем в принципе ваш код отличается от моего?
не вижу назначение ссылкам классов

(Отредактировано автором: 08 Ноября, 2010 - 22:07:47)

 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:10:53
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




ух ты, для меня чуток сложновато, ладно спасибо, теперь буду весь вечер разбираться))))
 
 Top
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:13:37
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




кстати стиль там тоже есть. у текущей страницы класс .curpage
 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:16:46
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




да, я заметил)
(Добавление)
Вот меня токо 1 настораживает
$pCount - количество страниц всего
$pDisplay - Количество отображаемых страниц
а вот откуда мне эти переменные брать
 
 Top
DeepVarvar Супермодератор
Отправлено: 08 Ноября, 2010 - 22:19:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




LORDIF пишет:
переменные брать
из БД
 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:20:38
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




были бы они там, было бы вообще отлично)
(Добавление)
vitaliy_mad пишет:
Цитата:
LORDIF пишет:
А чем в принципе ваш код отличается от моего?

не вижу назначение ссылкам классов

Если вы имеете в виду, что не прописан каждой ссылке класс, то я их просто удалил за ненадобностью, так как не работает.

(Отредактировано автором: 08 Ноября, 2010 - 22:24:54)

 
 Top
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:23:51
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




SELECT * FROM `table

mysql_num_rows() - всего

pDisplay - выьираете сами
 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:31:22
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Прошу прощения а последняя строчка вообще что-то означает?
PHP:
скопировать код в буфер обмена
  1. getPages('http://....../pages.php',150,10,'p');
 
 Top
vitaliy_mad
Отправлено: 08 Ноября, 2010 - 22:32:48
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




Пример вызова...
Отправлять по ссылке на http://....../pages.php?p=...

всего 150 страниц
на экране показывать 10
'p' - появляется в адресной строке
 
 Top
LORDIF
Отправлено: 08 Ноября, 2010 - 22:35:08
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Это я понял, но вместо этих 150, 10 я по идеи должен написать $pCount, $pDisplay, я правильно понимаю?
 
 Top
Страниц (4): [1] 2 3 4 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTML, Дизайн & CSS »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB