Да Ё Проблема не в выводе записей с ними все отлично, проблема как сделать в навигации чтобы по когда переходишь по страницам они увеличивались... сейчас по страницам как не ходи будет [1][2][3]...[8][9][10] а надо чтобы когда например на страницу [3] жмешь стало [3][4][5]...[8][9][10] Еще раз! Мне нужно сделать не вывод он уже есть! Мне нужна сделать так чтобы навигация выводилась как я написал в скрипте это функция public function link_page()... Я не могу придумать как так сделать! Можно сказать что вся суть в этом цикле PHP: for ($i = 0; $i < 3; $i++) { if($i == $this->page) { $return .= "[".($i + 1)."]"; } else { $return .= "<a href='".$this->prefix_p."=".($i + 1)."'>[".($i + 1)."]</a>"; } } У меня было несколько попыток что-то сделать, но почему-то не получается у меня это придумать! Вот одна из попыток PHP: for ($i = $this->page; $i < $this->page+3; $i++) { if($i == $this->page) { $return .= "[".($i + 1)."]"; } else { $return .= "<a href='".$this->prefix_p."=".($i + 1)."'>[".($i + 1)."]</a>"; } } Делает бесконечное число страниц =( Хоть и отражает частично суть как я хочу!
FireFenix, спасибо, но моим нужды это не удовлетворились Пришлось скурить трубку мира и создать то что сам не понимаю, но зато работает как я хотел Вот пример того как кодить лучше не надо PHP: public function link_page() { $sql = "SELECT COUNT(*) FROM `".$this->table."`".$this->where.$this->order_by; $value = mysql_query($sql); $value = mysql_fetch_row($value); $alllines = $value[0]; $str = ceil($alllines / $this->lines); // общее число страниц $return .= "<div class='navigation'>"; if($this->page != 0) { $return .= "<a href='".$this->prefix_p."=".($this->page)."'><</a>"; } else { $return .= "<span><</span>"; } $return .= " "; if($this->page + 1 != 1) { $return .= "<a href='".$this->prefix_p."=1'>1</a>"; } else { $return .= "<span>1</span>"; } $return .= " "; if($this->page + 1 == $str && $this->page + 1 != 1 && $str < 2) { $return .= "<a href='".$this->prefix_p."=".($this->page - 2)."'>".($this->page - 2)."</a>"; $return .= "<a href='".$this->prefix_p."=".($this->page - 1)."'>".($this->page - 1)."</a>"; } if($this->page > 1) { if($str > 1 && $this->page >= 4) { if($str >= 5 && ($this->page == $str - 1 or $this->page == $str - 2)) { if($this->page == $str - 2 && $str != 5) { } else { $return .= "<a href='".$this->prefix_p."=".($this->page - 2)."'>".($this->page - 2)."</a>"; } if($this->page == 4 && $str == 6) { } else { $return .= "<a href='".$this->prefix_p."=".($this->page - 1)."'>".($this->page - 1)."</a>"; } } } if(($str > 4 && $str < 8 && $this->page == $str - 2) or ($str == 4 && $this-> page == $str - 1)) { $return .= "<a href='".$this->prefix_p."=".($this->page - 1)."'>".($this->page - 1)."</a>"; } $return .= "<a href='".$this->prefix_p."=".($this->page)."'>".($this->page). "</a>"; } if($this->page + 1 != 1 && $this->page < 2 && $str != 2) { $return .= "<span>".($this->page + 1)."</span>"; } if($this->page > 1 && $this->page + 2 <= $str) { $return .= "<span>".($this->page + 1)."</span>"; } if($this->page + 2 < $str) { if($this->page + 1 == 1) { $return .= "<a href='".$this->prefix_p."=".($this->page + 2)."'>".($this->page + 2)."</a>"; if($str > 3) { $return .= "<a href='".$this->prefix_p."=".($this->page + 3)."'>".($this->page + 3)."</a>"; } if($this->page + 3 >= $str) { } else { if($str != 4) { $return .= "<a href='".$this->prefix_p."=".($this->page + 4)."'>".($this->page + 4)."</a>"; } } } else { if($this->page + 1 == 2) { $return .= "<a href='".$this->prefix_p."=".($this->page + 2)."'>".($this->page + 2)."</a>"; if($str != 4) { $return .= "<a href='".$this->prefix_p."=".($this->page + 3)."'>".($this->page + 3)."</a>"; } } else { $return .= "<a href='".$this->prefix_p."=".($this->page + 2)."'>".($this->page + 2)."</a>"; } } } $return .= " "; if($this->page + 1 != $str) { $return .= "<a href='".$this->prefix_p."=".$str."'>".$str."</a>"; $return .= " "; $return .= "<a href='".$this->prefix_p."=".($this->page + 2)."'>></a>"; } else { if($str > 1) { $return .= "<span>".$str."</span>"; } $return .= "<span>></span>"; } $return .= "</div>"; return $return; } До сих пор удивляюсь как все работает
Можно ли написать скрипт редиректа с перехватом рефера? Если рефер передаётся, то редирект происходит, а если рефер не передаётся, то редиректа не происходит просто отображается белый экран?
В simple TDS это уже есть если про это, а еcли нет то - PHP: if(!empty($_SERVER['HTTP_REFERER'])) { header("Location: http://www.example.com/"); } die;
Ну да нужна была навигация и не просто, а такая которую хочу я =) Не помню как это писал и до сих пор не пойму как это работает, но работает правильно и так как я хотел =) Ничего подобного! =) Я написал то что работает, а дальше уже пофигу Хотя щас понимаю что можно все сделать немного попроще, но лучше не буду трогать, работает да и ладно Проверил когда всего 1,2,3,4,5,6,8 и больше страниц вроде ничего неправильного не появилось, значит все отлично p.s Наверное мой код если его можно назвать кодом похож на код который в висте =)
Доброго времени суток..Я задам простой вопрос который относится к PHP/MySQL Я вообще хочу всё изучать с нуля. Если поможете буду признателен.Так как я хочу этому научится и имею большой интерес и потенциал . Заранее спасибо
Вопрос такой: я получаю с помощью курла исходник страницы, записываю в переменную и в этом исходнике мне нужно с помощью регулярок достать одну ссылку. Начало мне известно /page.php?act=pos&hash= ,но параметр hash всегда разный и мне нужно отпарсить эту ссылку вместе с хешем. Вот пример хеша 5fdb61085849e51fc4. Заранее благодарен.
PHP: </span><a style='font-weight:normal' href='/page.php?act=pos&hash=5fdb61085849e51fc4'>Изменить</a><span class="divider">
Если там будет еще одна кавычка после линка без переводов строки то он сожрет все что до нее, жадность в таких случаях уменьшают - U
Странно, но мне выдало вот что: fbb77e87fd21bc22b430d84770ac352bd5ed3e48f70e8e4868f1deb3e114eefcc0256c1de36d32b4adcbc71d93
У меня вопрос по движку Shop-script Проблема с админкой, выдает : Fatal error: Class 'PEAR' not found in [путь]/kernel/wbsinit.php on line 356 Помогите пожалуйста, я уже в отчаянии. =\ PHP: return PEAR::raiseError( "Error loading file: $langListFileName" ); $result = array(); $handle = fopen( $filePath, "r" ); while ( ($data = fgetcsv($handle, 100, "\t") ) !== FALSE ) { if ( array_key_exists( $data[0], $serverLanguages ) ) $wbs_languages[$data[0]] = array( WBS_LANGUAGE_ID=>$data[0], WBS_LANGUAGE_NAME=>$data[1], WBS_ENCODING=>$data[2] ); } fclose($handle); return null; } ?>