Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Parametry URL
Forum PHP.pl > Forum > Przedszkole
Lucius
Na początku Witam forumowiczów.

Nie jestem pewien czy odpowiednio nazwałem temat, liczę na ewentualne pouczenie.

Rozpocząłem tworzenie swojej pierwszej strony w php, mam problem z którym nie mogę sobie poradzić. Przedstawię temat od początku czyli przykładowo index.php, w tym pliku posiadam listę punktów z odnośnikami:
  1. <a href="index.php?id=1">Strona 1</a>
  2. <a href="index.php?id=2">Strona 2</a>

oraz kod includujący mi w wybrane miejsce odpowiednie pliki:
  1. <?php
  2. switch ($_GET['id']) {
  3. case '1':
  4. default:
  5. include "1.php";
  6. break;
  7. case '2':
  8. include "2.php";
  9. break;
  10. }
  11. ?>

w pliku 2.php posiadam listę rozwijaną, chciałbym aby po wybraniu danej opcji został wczytany pod listą kolejny plik
  1. <form>
  2. <select name="lista" OnChange="submit(this)">
  3. <option value="opcja1">OPCJA1</option>
  4. <option value="opcja2">OPCJA2</option>
  5. </select>
  6. <noscript><input type="submit" value="Wczytaj formularz"></noscript>
  7. </form>
  8.  
  9. <?php
  10.  
  11. switch ($_GET['lista']) {
  12.  
  13. case 'opcja1':
  14. default:
  15. include "kolejnyplik1.php";
  16. break;
  17.  
  18. case 'opcja2':
  19. include "kolejnyplik2.php";
  20. break; }
  21. ?>


Mój problem polega na tym że gdy już wczytam do pliku index.php plik 2.php wszystko ładnie działa, adres posiada słuszną formę : index.php?id=2, ale gdy wybiorę cokolwiek z listy w pliku 2.php url zmienia się na np. index.php?lista=opcja2 co naturalnie powoduje wyświetlenie mi default ze switch w index.php.

Chciałbym aby po kliknięciu na np. OPCJA2 na liście wyświetliło mi się to co wyświetla mi się gdy wpisuję ręcznie index.php?id=2&lista=opcja2 .

Proszę o pomoc, kombinowałem i kombinowałem ale wychodzi na to że tworzyłem własny język php sciana.gif .
by_ikar
Daj default na ostatnim miejscu:

Kod
<?php

switch ($_GET['lista'])
{
    case 'opcja1':
        include 'kolejnyplik1.php';
    break;
    
    case 'opcja2':
        include 'kolejnyplik2.php';
    break;
    default:
        include 'kolejnyplikdefault.php';
    break;
}
Lucius
Zapisałem to w ten sposób, niestety nic się nie zmieniło.
  1. <?php
  2.  
  3. switch ($_GET['lista'])
  4. {
  5. case 'opcja1':
  6. include 'kolejnyplik1.php';
  7. break;
  8.  
  9. case 'opcja2':
  10. include 'kolejnyplik2.php';
  11. break;
  12. default:
  13. echo 'Wybierz opcję';
  14. break;
  15. }
korex
  1. <form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="GET">
  2. <select name="lista" OnChange="submit(this)">
  3. <option value="opcja1">OPCJA1</option>
  4. <option value="opcja2">OPCJA2</option>
  5. </select>
  6. <noscript><input type="submit" value="Wczytaj formularz"></noscript>
  7. </form>
  8.  
  9.  
  10. <?php
  11.  
  12. switch ($_GET['lista'])
  13. {
  14. case 'opcja1':
  15. include 'kolejnyplik1.php';
  16. break;
  17.  
  18. case 'opcja2':
  19. include 'kolejnyplik2.php';
  20. break;
  21. default:
  22. echo 'Wybierz opcję';
  23. break;
  24. }
  25. ?>
Lucius
Próbuję z
  1. <form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="GET">
ale nie przynosi to dalej żadnych efektów. Ciągle wychodzi index.php?lista=opcja1 zamiast ?id=2&lista=opcja1.
korex
sprobuj :
  1. <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="GET">
  2. <input type="hidden" name="id" value="<?php echo $_GET['id']; ?>"/>
  3. <select name="lista" OnChange="submit(this)">
  4. <option value="opcja1">OPCJA1</option>
  5. <option value="opcja2">OPCJA2</option>
  6. </select>
  7.  
  8.  
  9. <noscript><input type="submit" value="Wczytaj formularz"></noscript>
  10. </form>
  11.  
  12.  
  13. <?php
  14.  
  15. switch ($_GET['lista'])
  16. {
  17. case 'opcja1':
  18. include 'kolejnyplik1.php';
  19. break;
  20.  
  21. case 'opcja2':
  22. include 'kolejnyplik2.php';
  23. break;
  24. default:
  25. echo 'Wybierz opcję';
  26. break;
  27. }
  28. ?>
Lucius
Działa, nawet to rozumiem, dzięki wielkie.
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.