Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Funkcja Include(); + Mysql, funkcja include();+$_GET['mgid']+mySQL
mpps
post
Post #1





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


kolejna zagwostka (IMG:http://forum.php.pl/style_emoticons/default/dry.gif) :

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']);
}


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tumczasty
post
Post #2





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 2.08.2004
Skąd: Rzeszów

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


no to trzeba kod przemieścić, ale prawe menu wyświetlić po właściwej stronie

czy załapałem, o co chodziło:

  1. <?php
  2. while ($line_l = mysql_fetch_row($row_count_l)) {
  3. echo('<A HREF=\"index.php?id='.$line_l[0].'\">'.$line_l[1].'</A><BR>');
  4. if($line_l[0]==$_GET['id']) $podstr=$line_l[2];
  5. }
  6.  
  7. $bufor='';
  8. while ($line_r = mysql_fetch_row($row_count_r)) {
  9. $bufor.='<A HREF=\"index.php?id='.$line_r[0].'\">'.$line_r[1].'</A><BR>';
  10. if($line_r[0]==$_GET['id']) $podstr=$line_r[2];
  11. }
  12.  
  13. if(isset($_GET['id'])) {
  14. if(!isset($podstr)){
  15. print('Przykro mi - strona, której szukasz, jest w tej chwili niedostępna.');
  16. }
  17. else{
  18. include($podstr);
  19. }
  20. } else
  21. include('jakas_strona.htm'); // strona domyślna
  22.  
  23. echo $bufor;
  24. ?>


pamiętaj, że w takim układzie indeksy w obu tabelach nie mogą się dublować

pozdrawiam
t
Go to the top of the page
+Quote Post

Posty w temacie


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: 7.10.2025 - 22:37