Помощник
|
Помогите исправить код |
oduvan4ik
|
Сообщение
#1
|
||
|
|
||
|
|||
oduvan4ik
|
Сообщение
#2
|
|
а еще чтобы в верху отображалось количество ссылок на странице например 1-10 10-20 и запрос ( результаты 1-10 по запросу google ) - что то подобное
и неплохо если конечно можно сделать отобразить время запроса |
|
|
ZiTosS |
20.7.2008, 23:56;
Ответить: ZiTosS
Сообщение
#3
|
|
Вам легче использовать SOAP-клиент, для обращаения к Google серверу поиска, у них есть для этого своя API
Вот посмотрите тут http://code.google.com/more/#products-featured-android |
|
|
oduvan4ik
|
Сообщение
#4
|
|
просто я хочу изменить код под их дизайн
|
|
|
ZiTosS |
21.7.2008, 0:10;
Ответить: ZiTosS
Сообщение
#5
|
|
Это вам не только дизайн придётся править... Тут придётся проделать очень много работы с кодом! Я вам уже предложил вариант... Тока нужна поддержка php_soap.dll у сервера
|
|
|
oduvan4ik
|
Сообщение
#6
|
|
ну ладно а можно хотя бы страницы сделать ???
|
|
|
ZiTosS |
21.7.2008, 12:21;
Ответить: ZiTosS
Сообщение
#7
|
|
Вот вам PHP класс постраничного навигатора... Посмотрите как он сложен. И вы думаете что здесь надо вставить 2-3 строчки?
<?php //////////////////////////////////////////////////////////////////// class pages{ //data members var $pagename; var $totalpages; var $recordsperpage; var $maxpagesshown; var $currentstartpage; var $currentendpage; var $currentpage; //first and last inactive var $firstinactivespan; var $lastinactivespan; //must match $_GET['offset'] in calling page var $firstparamname="p"; //use as "&name=value" pair for getting var $params; //text for navigation var $strfirst = "[В начало]"; var $strlast = "[В конец]"; //for error reporting var $errorstring; function pages($pagename, $totalrecords, $recordsperpage, $recordoffset, $maxpagesshown=4){ $this->pagename=$pagename; $this->recordsperpage=$recordsperpage; $this->maxpagesshown=$maxpagesshown; //already urlencoded if(!$this->checkRecordoffset($recordoffset, $recordsperpage)){ echo $this->errorstring; exit; } $this->setTotalPages($totalrecords, $recordsperpage); $this->calculateCurrentPage($recordoffset, $recordsperpage); $this->createInactiveSpans(); $this->calculateCurrentStartPage(); $this->calculateCurrentEndPage(); } function setInactiveSpanName($name){ $this->inactivespanname=$name; //call function to rename span $this->createInactiveSpans(); } function getInactiveSpanName(){ return $this->inactivespanname; } function setPageDisplayDivName($name){ $this->pagedisplaydivname=$name; } function getPageDisplayDivName(){ return $this->pagedisplaydivname; } function setDivWrapperName($name){ $this->divwrappername=$name; } function getDivWrapperName(){ return $this->divwrappername; } function setFirstParamName($name){ $this->firstparamname=$name; } function getFirstParamName(){ return $this->firstparamname; } function getNavigator(){ //wrap in div tag $strnavigator= "<div>"; //loop through displayed pages from $currentstart $strnavigator.=$this->getPageNumberDisplay(); for($x=$this->currentstartpage;$x<$this->currentendpage;$x++){ //make current page inactive if($x==$this->currentpage){ $strnavigator.= " <span><b>"; $strnavigator.= $x+1; $strnavigator.= "</b></span> "; }else{ $strnavigator.= $this->createLink($x, $x+1); } } $strnavigator.="<br>"; //output movefirst button if($this->currentpage == 0){ $strnavigator.=$this->firstinactivespan; }else{ $strnavigator.= $this->createLink(0, $this->strfirst); } $strnavigator.=" <b>: :</b> "; //move last button if($this->currentpage==$this->totalpages-1){ $strnavigator.= $this->lastinactivespan; }else{ $strnavigator.=$this->createLink($this->totalpages -1, $this->strlast); } $strnavigator.= "</div>"; return $strnavigator; } function createLink($offset, $strdisplay ){ $strtemp= "<a href=\"?$this->pagename&$this->firstparamname="; $strtemp.= $offset; $strtemp.= "$this->params\">$strdisplay</a>\n"; return $strtemp; } function getPageNumberDisplay(){ $str= "<span>Страницы ($this->totalpages) → </span>"; return $str; } function setTotalPages($totalrecords, $recordsperpage){ $this->totalpages=ceil($totalrecords/$recordsperpage); } function checkRecordoffset($recordoffset, $recordsperpage){ $bln=true; //if recordoffset=0 won't show error if($recordoffset%$recordsperpage!=0){ $this->errorstring="Error - Offset not a multiple of records per page."; $bln=false; } return $bln; } function calculateCurrentPage($recordoffset, $recordsperpage){ $this->currentpage=$recordoffset/$recordsperpage; } function createInactiveSpans(){ $this->lastinactivespan="<span>$this->strlast</span>\n"; $this->firstinactivespan="<span>$this->strfirst</span>\n"; } function calculateCurrentStartPage(){ $this->currentstartpage = $this->currentpage - $this->maxpagesshown; if($this->currentstartpage < 0) $this->currentstartpage = 0; } function calculateCurrentEndPage(){ $this->currentendpage = $this->currentpage + $this->maxpagesshown; if($this->currentendpage > $this->totalpages) $this->currentendpage = $this->totalpages; } } ?> А вот я его использую $perpages = 10; //Количество элементов в постраничном выводе $page = @intval($_GET['p']); if (empty($page)){ // Если отсутствует номер страницы в GET $page = 1; $record = 0; } else { $record = $page * $perpages; // Номер записи, с которой начинаем выводить } Вот SQL запрос для вывода из БД с LIMIT SELECT * FROM articles WHERE id_cat=".intval($_GET['id_cat'])." AND is_take=1 ORDER BY date DESC LIMIT $record, $perpages А вот оснавная часть... $totalrecords = $rs->getUnlimitedNumberRows(); // общее количество записей $numpages = ceil($totalrecords/$perpages); // Общее количество страниц if($numpages > 1){ // Если кол-во страниц > 1 /*Постраничный навигатор*/ $nav = new pages("act=article&id_cat=".intval($_GET['id_cat']),$totalrecords, $perpages, $record, 3); // создаём объект-навигатор и передаём ему первоначальные параметры echo $nav->getNavigator(); // Выводим навигатор на печать } Поэтому я вам и советую воспользоваться SOAP системой, там всё очень просто настраивается. И ещё вопрос тогда... Если вы хотите выодить постранично... Скажите мне пожайлуста, откуда вы берёте информацию, которую хотите выводить постранично? Просто на JS подобных вещей не делают, если только с использованием AJAX-технологий. |
|
|
oduvan4ik
|
Сообщение
#8
|
|
из текстового файла
|
|
|
ZiTosS |
22.7.2008, 11:00;
Ответить: ZiTosS
Сообщение
#9
|
|
Код конечно просто ужасный... Я понял его технологию... Но чтобы разделить найденное на страницы, здесь нужно будет переписать всё 100 раз...
Я так понял, данные вы биоётне не из текстового файла... А прямо из массива item, и делаете по нему поиск. Это же не вы писали?! Просто код ну времён так этак 90-х годов, когда ещё не знали поиска по шаблону, по вхождению... А так же не знали что такое узел(node), как добавить найденное в div... Я просто охренел от такого тупого кода |
|
|
oduvan4ik
|
Сообщение
#10
|
|
да из массива ... я перепутал просто ... хм какой скрипт был такой и скачал ))) а есть ссылка на похожий скрипт ???
|
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Помогите вспомнить рекламного бота Телеграм для обмена рекламой | 0 | Mixatraider | 692 | 21.2.2024, 23:42 автор: Mixatraider |
|
Посоветуйте партнерку, что бы исправить ситуацию | 11 | Maneja | 3686 | 28.9.2021, 23:36 автор: NikosTM |
|
Почистить код на сайте | 1 | Timka | 1090 | 2.1.2021, 1:13 автор: 0pium |
|
Помогите рещить проблему с монитором. Почему низкое разрешение при подключении монитора через displayport? |
0 | Levels | 1695 | 11.12.2020, 0:48 автор: Levels |
|
Исправить проблему в сайте, требуется помощь программиста | 1 | woolf | 1142 | 14.10.2020, 14:47 автор: WoWeb |
Текстовая версия | Сейчас: 29.3.2024, 5:08 |