Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]$_GET różne zastosowanie?
SkeraPL
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 2.10.2012

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


Witam to jest mój pierwszy post (IMG:style_emoticons/default/biggrin.gif) Dział chyba dobry, ale tradycyjnie, jak zły to proszę o przeniesienie (IMG:style_emoticons/default/biggrin.gif)

Mam problem. Robię taki w miarę amatorski bo sam jestem amatorem; sklep do mojej serwerowni (IMG:style_emoticons/default/biggrin.gif) Opieram go o html/css/php. Pisze do niego własne skrypty (czasami wykorzystuję to co w necie, ale rzadko bo sam wymyślam) i teraz piszę system NEWS i tu mam problem ale nie z samym systemem news. Problem jest ponieważ chcę napisać archiwum.php, w którym będzie lista wszystkich newsów i do niego dałem taką zmienną dotyczącą kategorii newsa $_GET 'kat' o wartościach 'promocja', 'nowosc', zmiana'; oraz chcę podzielić to archiwum na strony po 10 wpisów więc dałem również $_GET: 's' (strona) o wartości równej stronie. no i mam taki problem, bo podzielenie na kategorie to MOŻLIWOŚĆ nie wymagana więc chcę aby jeżeli dzielenie nie będzie wybierane to strony można było zmieniać normalnie np. archiwum.pgp?s=1, a kiedy będzie z kategorią to żeby rozróżniało i pisało np. archiwum.php?kat=nowosc&s=2. Mam nadzieję, że to moje rozpisanie pozwoli Wam jakoś zrozumieć mój problem i mi pomoże.

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
b4rt3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Ja osobiście uważam że includowanie podstron to generalnie zły pomysł. Jeśli już musisz tak robić to sprawdź czy wartość GET jest zgodna z oczekiwaniami.

  1. $allowed = array('index.php', 'strona.php', 'inna_strona.php'); // itd. ogólnie tablica stron które mogą występować w GET i do których użytkownik może mieć dostęp
  2.  
  3. if (in_array($_GET['strona'], $allowed)) {
  4.  
  5. if ($_SERVER['HTTP_REFERER'] == 'poprzednia_strona') { // możesz też sprawdzić czy adres został wpisany ręcznie
  6. // zaincludowanie pliku
  7. } else echo 'przekierownie np. na index';
  8.  
  9. } else echo 'przekierownie np. na index';
Go to the top of the page
+Quote Post
!*!
post
Post #3





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

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


Cytat(b4rt3kk @ 16.10.2012, 19:12:48 ) *
  1. $allowed = array('index.php', 'strona.php', 'inna_strona.php'); // itd. ogólnie tablica stron które mogą występować w GET i do których użytkownik może mieć dostęp
  2.  
  3. if (in_array($_GET['strona'], $allowed)) {
  4.  
  5. if ($_SERVER['HTTP_REFERER'] == 'poprzednia_strona') { // możesz też sprawdzić czy adres został wpisany ręcznie
  6. // zaincludowanie pliku
  7. } else echo 'przekierownie np. na index';
  8.  
  9. } else echo 'przekierownie np. na index';


Ewentualnie tak:

  1. if(isset($_GET['page']))
  2. {
  3. switch ($_GET['page'])
  4. {
  5. case 'index':
  6. include_once 'index.php';
  7. break;
  8. case 'forum':
  9. include_once 'forum/forum.php';
  10. break;
  11. case 'sendmail':
  12. include_once 'mail.php';
  13. break;
  14. default:
  15. include_once 'index.php';
  16. }
  17. }

Tym sposobem oddzielasz wartość GET od pliku.

Ten post edytował !*! 17.10.2012, 08:36:52
Go to the top of the page
+Quote Post

Posty w temacie
- SkeraPL   [PHP]$_GET różne zastosowanie?   2.10.2012, 19:35:15
- - b4rt3kk   Sprawa jest prosta, wystarczy sprawdzić czy zmien...   2.10.2012, 19:59:28
- - SkeraPL   Dobra, przyznam się bez bicia Że na takie rozwiąz...   14.10.2012, 14:12:40
- - viking   No to znajdź w adresie & albo ? i w zależności...   14.10.2012, 14:18:04
- - SkeraPL   Sprawdzanie czy $_GET jest pusta będzie tak w...   14.10.2012, 14:22:52
|- - !*!   Cytat(SkeraPL @ 14.10.2012, 15:22:52 ...   14.10.2012, 14:27:23
- - SkeraPL   Potrzebna jest wiadomość czy np. jest w tablicy ...   14.10.2012, 14:30:36
- - !*!   Napisz funkcje która będzie to robić. [PHP] pobie...   14.10.2012, 14:41:36
- - SkeraPL   A może zadziała coś takiego? [PHP] pobierz, plain...   14.10.2012, 14:57:42
- - fate   witam co by nie tworzyc nowego zapytam tu, do wys...   14.10.2012, 15:10:15
- - !*!   @up [PHP] pobierz, plaintext var_dump(preg_mat...   14.10.2012, 15:16:26
- - SkeraPL   Mój skrypt nawet działa [PHP] pobierz, plaintext i...   14.10.2012, 17:13:29
- - b4rt3kk   Nieco inna metoda przepisania zmiennych GET: [PHP...   14.10.2012, 18:48:17
- - fate   !*! Profesjonalista nie jestem... to co ra...   14.10.2012, 19:04:23
|- - b4rt3kk   Cytat(fate @ 14.10.2012, 20:04:23 ) ...   14.10.2012, 19:19:35
- - fate   to zrozumialem, ale pytalem jak temu zapobiec, edy...   16.10.2012, 17:03:39
- - b4rt3kk   Ja osobiście uważam że includowanie podstron to ge...   16.10.2012, 18:12:48
|- - !*!   Cytat(b4rt3kk @ 16.10.2012, 19:12:48 ...   17.10.2012, 08:36:00
- - fate   dzieki za sugestie, przemysle jak to zrobic.. i pr...   16.10.2012, 21:40:02
|- - bostaf   Cytat(fate @ 16.10.2012, 22:40:02 ) d...   16.10.2012, 22:36:34
- - fate   Dzięki prośba do autora tematu o plusy dla tych Pa...   23.10.2012, 17:26:50


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: 26.12.2025 - 05:16