
Kod
while ($line = mysql_fetch_row($row_count)) {
printf("<A HREF=\"index.php?id=%s\">%s</A><BR>", $line[2], $line[1]);
if(!isset($id)){
include("jakas_strona.htm"); // domyślna wyświetlana strona
}
else{
include($_GET['id']);
}
printf("<A HREF=\"index.php?id=%s\">%s</A><BR>", $line[2], $line[1]);
if(!isset($id)){
include("jakas_strona.htm"); // domyślna wyświetlana strona
}
else{
include($_GET['id']);
}
wyjaśnienia:
- line[2] to rekord w bazie z linkiem do jakiejs_podstrony
- line[1] to nazwa linku do jakiejs_podstrony wyświetlana na stronie w menu
- jest jeszcze jedna komórka w tabeli, poprzedzająca pozostałe, gdzie zapisany jest indeks danej podstrony (przyjmijmy line[0]).
Czyli zapis w bazie danych wygląda np. tak:
indeks | nazwa linku | adres URL podstrony
1 | strona 1 | strona_1.htm
2 | strona 2 | strona_2.htm
itd.
i teraz:
kliknięcie na link spowoduje przekazanie wartości w URL: id=jakas_strona.htm (przekazywanie danych odbędzie się za pomocą metody GET). A więc adres w pasku adresu będzie wyglądał tak: www.domena.pl/index.php?id=jakas_strona.htm. Dzięki temu zostanie wyświetlona (includowana) dana podstrona.
Pytanie:
jak podstawić zmienną, która będzie pobierała dane z URL, w którym zamiast dokładnego adresu URL po zmiennej 'id' podany będzie indeks (na zasadzie: www.domena.pl/index.php?id=1 - gdzie 1 to indeks) kojarzony z podstroną strona_1.htm, która ma zostać wyświetlona?
Rozumiem, że ta zmienna powinna być podstawiona pod 'id' w include($_GET['id']);
pozdro
marcin