Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]Podstrony za pomocą metoty GET
Forum PHP.pl > Forum > Przedszkole
tomek200
Witam mam na dole strony formularz z przyciskami które dają taki link index.php?str=1, index.php?str=2 itd. i nie wiem jak zrobić żeby na każdej stronie wyświetlało się co innego. Jak to zrobić?
PS Przepraszam że duplikuje temat.
Kishin
pokaż skrypt
daniel1302
w index.php
  1. if(isset($_GET['str']) && (int)$_GET['str'] == 1) {
  2. //TUTAJ STRONA1
  3. } else if(isset($_GET['str']) && (int)$_GET['str'] == 2) {
  4. //TUTAJ STRONA2
  5. }
Michael2318
  1. if ( intval($_GET['str']) == 1 )
  2. {
  3. echo 'tekst na stronie pierwszej';
  4. }
  5. else if ( intval($_GET['str']) == 2 )
  6. {
  7. echo 'tekst na stronie drugiej';
  8. }
daniel1302
Cytat(Michael2318 @ 27.01.2015, 15:06:49 ) *
  1. if ( intval($_GET['str']) == 1 )
  2. {
  3. echo 'tekst na stronie pierwszej';
  4. }
  5. else if ( intval($_GET['str']) == 2 )
  6. {
  7. echo 'tekst na stronie drugiej';
  8. }


A co jesli ktoś wejdzie na index.php?
Wyświetli się powiadomienie o niezdefiniowanym indeksie tablicy _GET
tomek200
  1.  
  2. <?
  3. if ( intval($_GET['str']) == 2 )
  4. {
  5. echo 'tekst na stronie pierwszej';
  6. }
  7. else if ( intval($_GET['str']) == 3 )
  8. {
  9. echo 'tekst na stronie drugiej';
  10. }
  11. ?>
  12. <form method="get" action="">
  13. <input type="submit" value="2" name="str"></input>
  14. <input type="submit" value="3" name="str"></input>
  15. <input type="submit" value="4" name="str"></input>
  16. <input type="submit" value="5" name="str"></input>
  17. <input type="submit" value="6" name="str"></input>
  18. </form>

wstawiłem kod podany powyrzej i dalej nie działa
nospor
Ale wiesz, ze masz wpierw przycisnac guzik by zadzialalo?
Kishin
Jak dla mnie działa
tomek200
hehe wiem ale po wciśnięciu guzika ładuje się strona ale taka sama jak wcześniej.
nospor
Ale w tej chwili masz podpiete tylko guziki 2 i 3 wiec tylko one generują inną tresc
tomek200
Popiołem reszte i dalej nic
nospor
dodaj na poczatek
print_r($_GET);
i pokaz co wyswietla
tomek200
Jeśli coś takiego to dalej nic.
  1. <?
  2. print_r($_GET);
  3. if ( intval($_GET['str']) == 2 )
  4. {
  5. echo 'tekst na stronie pierwszej';
  6. }
  7. else if ( intval($_GET['str']) == 3 )
  8. {
  9. echo 'tekst na stronie drugiej';
  10. }
  11. ?>
nospor
facepalmxd.gif
Jesli dodanie print_r nie powoduje wyswietlenia chocby teksty ARRAY na stronie, znaczy ze edytujesz inny plik a wyswietlasz inny...

Albo.... ty w ogole odpalasz to jako plik PHP? Ty w ogole masz zainstalowane php?
daniel1302
print_r może nic nie zwracać

spróbuj wstawić na sam początek
  1. var_dump($_GET);
nospor
@daniel $_GET zawsze isntieje wiec print_r zwroci w najgorszym wypadku Array().
Powody problemow opisalem w poscie wyzej. NIe ma co kombinowac
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.