Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> index.php - switch i powtarzający się kod., Jak proponujecie wybrnąć z sytuacji.
tdr
post
Post #1





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 2.02.2013

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


Cześć!

Jestem w trakcie nauki php-a i tworze właśnie plik index.php. Jednak już na tym etapie natknąłem się na problem powtarza się kodu... Problem jest może i banalny ale chciałbym wiedzieć jak Wy sobie radzicie w takich przypadkach. Jedyny pomysł, który przyszedł mi do głowy to użyć:
Kod
$gowna = <<<PL
$url = 'strony/glowna.php';
$title = "Bez switch: Strona główna";
$description = "Opis: Default - strona główna";
PL;
Jednak z przyjemnością posłucham Waszych sugestii.

Kod
<?php

if(isset($_GET['strona'])){
    switch($_GET['strona']){
        case 'kontakt':
            $url = 'strony/kontakt.php';
            $title = "Tytuł: Dział kontakt";
            $description = "Opis: Opis podstrony działu kontakt";
        break;
        
        default:
            $url = 'strony/glowna.php';
            $title = "Default: Strona główna";
            $description = "Opis: Default - strona główna";
    }
}else{
    $url = 'strony/glowna.php';
    $title = "Bez switch: Strona główna";
    $description = "Opis: Default - strona główna";
}

    include "templates/header.php";
    include $url;
    include "templates/footer.php";


?>



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





Grupa: Zarejestrowani
Postów: 350
Pomógł: 31
Dołączył: 23.05.2010

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


Może tablice?
  1. $pages = array(
  2. 'index' => array('title' => 'Strona główna', 'description' => 'Opis..', 'file' => 'strony/index.php'),
  3. 'omnie' => array('title' => 'O mnie', 'description' => 'Jakis opis', 'file' => 'strony/omnie.php'),
  4. 'kontakt' => array('title' => 'Kontakt', 'description' => 'Skontaktuj sie ze mna', 'file' => 'strony/kontakt.php'),
  5. // itd
  6. );
  7.  
  8. $page_id = isset($_GET['strona']) ? $_GET['strona'] : 'index';
  9.  
  10. if ( array_key_exists($page_id, $pages) )
  11. {
  12. include "templates/header.php";
  13.  
  14. // teraz nowy kod:
  15. $title = $pages[$page_id]['title'];
  16. $description = $pages[$page_id]['description'];
  17. include_once $pages[$page_id]['file'];
  18.  
  19. include "templates/footer.php";
  20. }
  21. else {
  22. echo 'Wyrzuc mu strone 404 - ze taka podstrona nie istnieje';
  23. }


PS. Pisałem z palca, bez edytora - za literówki w kodzie przepraszam :-)

Ten post edytował wujek2009 1.06.2013, 19:15:07
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: 16.10.2025 - 07:07