Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wstawienie <dzielnastrony> tworzy stronicowanie.
zlw
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 30.04.2007
Skąd: WWA

Ostrzeżenie: (0%)
-----


Witam,

Mam pewien problem. Otóż chciałem w swoim skrypcie dać coś takiego, że przy pisaniu np. artykułu gdy wpiszę kod <dzielnastrony> przy wyświetlaniu tworzy mi stronicowanie (na jednej stronie to co przed <dzielnastrony> a na drugiej to co za nim).
Chciałbym też aby skrypt obsługiwał też kilka wystąpieć <dzielnastrony> (stworzy wtedy kilka podstron).

Zupełnie nie wiem jak się zabrać do tego, więc proszę o pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
krowal
post
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

Ostrzeżenie: (0%)
-----


Proste jak drut (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) tworzysz sobie taki tekst, zapisujesz go do pliku czy do bazy danych, jak tam już sobie chcesz. potem przy próbie oglądnięcia takiego tekstu najpierw odpowiednio go sobie przetwarzasz. Robisz sobie explode() na tym tekście rozdzielając go wyrażeniem "<dzielnastrony>" - dzięki temu uzyskujesz tablicę z podzielonymi stronami, wiesz też ile ich jest dzięki funkcji count(). Potem sprawdzasz czy został wysłany wcześniej jakiś $_GET['numer_strony'], jeśli nie to wyświetlasz pierwszą stronę, a jeśli tak to wyświetlasz stronę o numerze = $_GET['numer_strony']. A na dole bez względu na wszystko wyświetlasz nawigator do przewijania stron "<< < 1 2 3 4 > >>" - może to być coś takiego. Linki mogą wyglądać w taki sposób
  1. <a href="index.php?doc=artykul&id_artykulu=xxx&numer_strony=1">1</a>
Go to the top of the page
+Quote Post
byqu
post
Post #3





Grupa: Zarejestrowani
Postów: 18
Pomógł: 5
Dołączył: 24.08.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jeżeli chciałbyś przez coś takiego to można by to zrobić tak:
  1. <?php
  2. $podstrona = explode("<dzielnastrony>", $niepodzielona_tresc); //zmienna $podstrona[$nr_strony] zwróci tekst na daną stronę
  3.  
  4. echo $podstrona[$nr_strony]; //pamiętaj, że pierwsza wartość tablicy to 0, czyli strona 1 ma wartość 0
  5. echo "Strona: ";
  6.  
  7. $ilosc_stron = count($podstrona);
  8.  
  9. if(isset($_GET['strona']) & ($_GET['strona'] >= $ilosc_stron) != TRUE) { //sprawdzenie czy zmienna $_GET['strona'] istnieje i, czy jest ona mniejsza bądź równa $ilosc_stron
  10. $nr_strony = $_GET['strona'] - 1;
  11. } else {
  12. $nr_strony = 0;
  13. }
  14.  
  15. $i = 0;
  16. while($i <= $podstrona) { //wyświetlenie linków do podstron
  17. $nr = $i + 1;
  18.  
  19. echo "<a href=\"?strona=" . $nr . "\"> " . $nr ." </a>";
  20.  
  21. $i++;
  22. }
  23. ?>

Pisane z palca.
Jak przekazujesz GETem nr strony to prawdziwy ( licz od 1, a nie od 0 ).

Ten post edytował byqu 4.11.2007, 16:27:36
Go to the top of the page
+Quote Post
zlw
post
Post #4





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 30.04.2007
Skąd: WWA

Ostrzeżenie: (0%)
-----


Wielkie dzięki, zaraz będę próbował.

Zupełnie zapomniałem, że można ten tekst podzielić funkcją explode (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 23:16