Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Modyfikacja skryptu podstron
NorQ
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Witam, mam kod skryptu podstron:
  1. <?php
  2. $site = $_GET['site'];
  3. if(!empty($site)) {
  4. if(is_file("pages/sites/$site.php"))
  5. include "pages/sites/$site.php";
  6. else include "pages/error.php";
  7. }
  8. else include "pages/news.php";
  9. ?>


Ma on klasę ?site=NazwaStrony której katalogiem jest /pages/sites/ a jak dodać do niej jeszcze jedną klasę, np. ?page=NazwaStrony Której katalogiem będzie /pages/strony/ ? Chodzi mi że można wybrać sobię klasę w url, każda includuje pliki z własnego katalogu. Strona erroru i głównej strony są takie same dla wszystkich klas.

Jeżeli wiadomo o co chodzi, proszę o pomoc. wink.gif

Ten post edytował NorQ 17.06.2012, 18:26:32


--------------------
HTML, CSS, JS, PHP i inne nie idą w las...
Powoli się uczę co i jak ;]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


To pytanie nadaje sie do przedszkola... skoro wiesz jak sprawdzić czy dana zmienna istnieje to chyba nie powinieneś mieć problemu z dodaniem if()?
Go to the top of the page
+Quote Post
NorQ
post
Post #3





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Ja sobie nie radzę najlepiej z kodem php... Może ktoś przedstawić gotowy kod ?

Wymyśliłem jakoś kod, ale ma błędy, np. sesja site wczytuje stronę główna z wszystkimi podstronami no i nie wyświetla strony błędu:

  1. <?php
  2. $site = $_GET['site'];
  3. $radio = $_GET['radio'];
  4.  
  5. if(!empty($site)) {
  6. if(is_file("modules/$site.php"))
  7. include "modules/$site.php";
  8. }
  9. if(!empty($radio)) {
  10. if(is_file("modules/radio/$radio.php"))
  11. include "modules/radio/$radio.php";
  12.  
  13. else include "modules/error.php";
  14. }
  15. else include "modules/news.php";
  16. ?>


Co tu poprawić?

Ten post edytował NorQ 18.06.2012, 20:44:52


--------------------
HTML, CSS, JS, PHP i inne nie idą w las...
Powoli się uczę co i jak ;]
Go to the top of the page
+Quote Post
!*!
post
Post #4





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

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


  1. if($_GET['site'] == 'nazwastrony')) { indlude 'nazwastrony.php';}


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
NorQ
post
Post #5





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


gdzie to w kodzie dodać?


--------------------
HTML, CSS, JS, PHP i inne nie idą w las...
Powoli się uczę co i jak ;]
Go to the top of the page
+Quote Post
!*!
post
Post #6





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

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


W ogóle robisz to źle:

  1. switch ($_GET['site'])
  2. {
  3. case 'strona1':
  4. include 'page/strona1.php';
  5. break;
  6. case 'xxx':
  7. include 'xxx/xxx.php';
  8. break;
  9. case 'cokolwiek':
  10. include 'cokolwiek.php';
  11. break;
  12. default:
  13. include 'pages/default.php';
  14. }


Tak to się robi. I dodajesz sobie jakie chcesz strony, łącznie z pozycją, względem nazwy.

Ten post edytował !*! 18.06.2012, 21:07:33


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
NorQ
post
Post #7





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 15.07.2011

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


Ja się nie chcę bawić w wspisywanie w kodzie .php - wolę includowanie od razu.


--------------------
HTML, CSS, JS, PHP i inne nie idą w las...
Powoli się uczę co i jak ;]
Go to the top of the page
+Quote Post
greycoffey
post
Post #8





Grupa: Zarejestrowani
Postów: 320
Pomógł: 29
Dołączył: 3.04.2010

Ostrzeżenie: (20%)
X----


To zabezpiecz to tak, by nie było możliwe Local File Inclusion lub zapętlenie całego skryptu wink.gif

Ten post edytował greycoffey 18.06.2012, 21:23:29
Go to the top of the page
+Quote Post
Mephistofeles
post
Post #9





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

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


To zrób tak:
  1. $pages = array(
  2. 'strona1' => 'strona1.php',
  3. 'strona2' => 'costam.php'
  4. );
  5. if (array_key_exists($_GET['page'], $pages))
  6. include $pages[$_GET['page']];
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 11:32