Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> linki na stronie, czy naprawdę muszę wstawiać tyle case...
tujek
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 3.07.2004

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


Witam!
Jest sobie strona www oparta ładnie na divach, wszystko śmiga i buczy, ale interesuje mnie pewne ułatwienie sprawy. Bo teraz to wygląda tak:

  1. <? 
  2.  switch($_GET['show']){
  3.  
  4.  case news:
  5.  include 'tresc/news.txt';
  6.  break;
  7.  
  8.  case organizacja:
  9.  include 'tresc/organizacja.txt';
  10.  break;
  11.  
  12.  case pracownie:
  13.  include 'tresc/pracownie.txt';
  14.  break;
  15.  
  16. ....
  17.  
  18.  case informacja:
  19.  include 'tresc/informacja.txt';
  20.  break; 
  21.  
  22.  default:
  23.  include 'tresc/news.txt';
  24.  break;
  25.  
  26.  }
  27.  ?>


same linki natomiast wyglądają tak:

  1. <?php
  2. <li><a href="index.php?show=news">Aktualności</a></li>
  3. ?>


Przy małej ilości linków nie ma sprawy, ale jak dojedzie do kilku setek?. Robi się pełno tego typu fragmentów kodu
  1. <?php
  2. case informacja:
  3.  include 'tresc/informacja.txt';
  4.  break;
  5. ?>


Czy jest jakiś sposób obejścia sprawy?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
carbolymer
post
Post #2





Grupa: Zarejestrowani
Postów: 102
Pomógł: 12
Dołączył: 27.01.2007
Skąd: north              Poziom: 158                     Tytuł: Miszcz

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


  1. <?php
  2. //lista ścieżek do możliwych plików
  3. $aPaths = array('.', 'katalog1', 'katalog2', 'katalog2/katalog2a','katalog2/katalog2b');
  4.  
  5. $sShow = isset($_GET['show']) ? addslashes($_GET['show']) : 'news';
  6. foreach($aPaths as $sPath)
  7. {
  8. if(file_exists('./'.$sPath.'/'.$sShow.'.txt'))
  9. {
  10. //tutaj trzeba lekkiej modyfikacji co do layoutu
  11. include('./'.$sPath.'/'.$sShow.'.txt');
  12. }
  13. }
  14. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 07:10