Numery kolejnych podstron

Nie pokazuje mi koloru czerwonego linku strony na ktorej aktualnie sie znajduje :frowning:

Cały czas na czerwono jest cyfra 1. Jak to poprawić ?

I czy ten kod co podałeś poprzednio jest już nie potrzebny w style.css ?:

a.wybrana { font-weight: bold; color: red; }

Linki nie działają bo nie przerzuca na kolejne podstrony po kliknięciu w link 2 :frowning:

Jak to poparwic zeby dzialalo mi ?

Ten kod w CSS jest zbędny, a link 1 ma kolor czerwony dlatego, że link do 2 nie działa (to znaczy skrypt nie wie, ze jest na stronie nr 2) - zrobiłeś te wpisy w .htaccess o których pisałem?

Sprawdzałem i jedynie mam taki tylko zapis z .hatccses

Order allow,deny

Deny from all



RewriteEngine On

RewriteBase /


RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php [QSA,L]

Nic innego nie moge znalesc :frowning:

Czy masz tylko jeden plik .htaccess w całym serwisie?

Pokaż kawałek kodu pliku ksiega.php, gdzie jest przypisanie wartości do zmiennej $strona (3 linijki przed aż do jej z przypisaniem i jedna następna).

EDIT: nigdy nie “bawiłem” się mod_rewrite, ale wygląda na to, że ten wpis w pliku .htaccess załatwia całą sprawę i przekazuje parametry wywołania do pliku index.php (główny plik formatki w templates), który potem wywołuje ze stosownymi parametrami poszczególne skrypty *.php (księga.php, uzytkownicy.php, itp.). To mi wygląda na Joomlę (ona też tak to robi).

Myślę, że wystarczy jak podasz linijkę z pliku ksiega.php, w której jest

$_GET

np coś takiego:

$strona = $_GET['page'];

I o parametr tego $_GET[] się rozchodzi (jaką tam wartość używają). – Dodane 20.12.2012 (Cz) 23:35 – Być może wystarczy zmienić kod w linijce (plik uzytkownicy.php)

if (isset($_GET['strona']) && is_numeric($_GET['strona']))

na następujący:

if (isset($_GET['uzytkownicy']) && is_numeric($_GET['uzytkownicy']))

I skrócone linki zaczną wreszcie działać. :slight_smile:

Tak, sprawdziłem i mam tylko jeden plik .htaccess w serwisie w katalogu głównym strony

ksiega.php

» Księga gości

<?php if (empty($wpisy)) { ?> Brak wpisów w księdze gości. Twój wpis może być pierwszy!<?php } else { ?>
Wpisz się do księgi gości →

  1. <?php foreach ($wpisy as $index => $wpis) { $idx = $wpisow - ($index + ($strona - 1) * $limit); ?>

  2. #<?php echo $idx; ?> <?php echo date(‘d.m.Y, H:i’, $wpis[‘data_dodania’]); ?>
    <?php echo bbcode(_e($wpis[‘wpis’])); ?>
    <?php echo _e($wpis[‘autor’]); ?> <?php if ($wpis[‘email’]) {?>[mail] <?php } ?> <?php if ($wpis[‘www’]) {?>[www]<?php } } ?>

  3. <?php if ($stron > 0) { for ($i = 1; $i <= $stron; $i++) { ?>

  4. <?php if ($i == $strona) {?><?php } ?><?php echo $i; ?><?php if ($i == $strona) {?><?php } ?><?php } } ?>
    <?php } ?>
    [/code]

Nie widze w powyższym kodzie zmiennej $_GET. Masz jakiś pomysł żeby mi pomóc ?

A możesz znaleźć w kodzie ksiega.php pierwsze przypisanie wartości do zmienne $strona?

To jest chyba to o ile się nie myle:

$idx = $wpisow - ($index + ($strona - 1) * $limit);

oraz chyba to:

  1. <?php if ($stron > 0) { for ($i = 1; $i <= $stron; $i++) { ?>
  2. <?php if ($i == $strona) {?><?php } ?><?php echo $i; ?><?php if ($i == $strona) {?><?php } ?><?php } } ?>
    [/code] To jeśli chodzi o plik ksiega.php Jak to zrobić żeby mi to działało ? Ja probowałem nawet tak zrobić, żeby w pliku index.php zmienić linie tę:

[code]$app->render(‘uzytkownicy.php’, array(‘uzytkownicy’ => $uzytkownicy));
Na tę linie:

$app->render('uzytkownicy.php', array('uzytkownicy' => $uzytkownicy, 'strona' => $strona));

I w pliku uzytkownicy.php usunąłem ten zapis:

if (isset($_GET['strona']) && is_numeric($_GET['strona']))

    $strona = intval($_GET['strona']);

  else

    $strona = 1;

I też mi nie działa :frowning:

Próbowałem zakombinować i na nić :frowning: Możesz mi pomóc?

@Darom82 - z tego, co widzę u Ciebie na stronie, to już działa. Prawdopodobnie zmienna $strona była ustawiana wcześniej przez skrypt w index.php w głównym folderze templatki i zbędne/błedne było przypisanie jej wartości z $_GET.

No tak. Faktycznie działa. A wiesz moze w jaki sposob napis z linkami „Idź do strony 1 2” wyrównać z tabelką ? żeby zaczynał się od krawędzi tabelki ?

Nie wiem, czy coś innego Ci się nie rozjedzie po tej zmianie, ale popraw ten poniższy kod (z dokładnością do formatowania):

Idź do strony 1 2
[/code]
na taki:

[code]
Idź do strony 1 2

Zmiany robisz w pliku uzytkownicy.php, który trochę inaczej wygląda - chodzi o dodanie wpisu
tuż po końcu tabeli i zakończenie tego DIV’a przed końcem sekcji . Klasę pages możesz nazwać dowolnie (byle się nie powtórzyła), dodatkowo musisz dodać do CSS (style.css) poniższy wpis

.content div.pages {

    margin: 4px 0 0 28px;

}

Dzięki temu możesz sobie regulować położenie tekstu “Strony: 1 2” - kolejne wartości to zgodnie ze wskazówkami zegara odstępy od góry, prawej strony, dołu i lewej strony - u Ciebie ważna jest góra (według mnie napis jest ciut za blisko dołu tabelki - dałem 4px) oraz lewa strona (28px).

Pablo_Wawa zrobiłem tak jak napisałeś i wszystko już ładnie działa tak jak trzeba. Także dziekuje Ci bardzo serdecznie i Wesołych Świąt Bożego Narodzenia Ci życze :slight_smile:

Cieszę się, że osiągnąłeś to co chciałeś uzyskać. Dziękuję za życzenia, Tobie również życzę spokojnych i rodzinnych Świąt. :slight_smile: