Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: funkcja switch
Forum PHP.pl > Forum > PHP
simonX
Chcę w dokumencie html zrobić aby się tekst wczytywał po kliknięciu na daną pozycję w menu bez kopwioania dokumentu bo to by było za monotonne tak dla każdego robić, więc mam coś takiego, nie wiem czy dobrze to zapisalem ale powinniście się zorientować o co mi chodzi:


plik HTML o nazwie sekcje.htm

  1. <ul name="sekcja">
  2. <li value="1">sekcja1</li>
  3. <li>sekcja2</li>
  4. <li>sekcja3</li>
  5. <li>sekcja4</li>
  6. <li>sekcja5</li>
  7. </ul>
  8.  
  9. <div id="content">
  10. <?php
  11. switch(sekcja)
  12. {
  13. case '1':echo "siema ";break;
  14.  
  15. }
  16. ?>
  17. </div>
  18.  
MateuszS
aaałaaaa!!!! zabolało sad.gif

Podstawy PHP! W plikach .htm/.html nie można używać PHP licząc że zadziała. Skopiuj all do pliku z rozszerzeniem .php

Blame
Myślę, że prościej będzie to zrobić GET'em. Każdy <li> będzie miał w sobie link, który będzie wskazywał który moduł wczytać. Przykład:
  1. <ul name="sekcja">
  2. <li value="1"><a href="index.php?sekcja=1">sekcja 1</a></li>
  3. <li><a href="index.php?sekcja=2">sekcja 2</a></li>
  4. </ul>

i php:
  1. switch($_GET['sekcja']){
  2.  
  3. case '1':
  4. echo 'Siema!'
  5. break; //itd.
  6. }
tehaha
switch wykonuje się względem przypadków zmiennej, którą najpierw musisz jakoś przekazać, w Twoim przypadku zrobisz to za pomocą linku i odbierzesz sobie przez $_GET, więc musisz zrobić coś takiego:
  1. <ul>
  2. <li><a href="index.html?sekcja=1" title="">sekcja1</a></li>
  3. <li><a href="index.html?sekcja=2" title="">sekcja2</a></li>
  4. <li>sekcja2</li>
  5. <li>sekcja3</li>
  6. <li>sekcja4</li>
  7. <li>sekcja5</li>
  8. </ul>
  9.  
  10. <div id="content">
  11. <?php
  12. if(isset($_GET['sekcja']) && is_numeric($_GET['sekcja']))
  13. {
  14. switch(sekcja)
  15. {
  16. case '1':
  17.  
  18. echo "siema ";
  19.  
  20. break;
  21.  
  22. case '2':
  23.  
  24. .....
  25.  
  26. break;
  27.  
  28. }
  29. }
  30.  
  31. ?>
  32. </div>


to że sobie tam napisałeś parametr name i value to jeszcze nie jest przekazywanie zmiennej
simonX
Cytat
Myślę, że prościej będzie to zrobić GET'em. Każdy <li> będzie miał w sobie link, który będzie wskazywał który moduł wczytać. Przykład:



No też tak właśnie miałem zrobić tylko tak to muszę podać w linkach jakiś target, nie? a ja nie używam ramek, div po prostu się rozszerza pod wpływem ilości tekstu.
Blame
Nie, nie, do tego nie potrzebne są żadne ramki. Skopiuj ten kod co ci podałem przykładowy do pliku np. index.php i wrzuć na serwer. Poklikaj sobie w linki, zobaczysz jak to działa.
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.