Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] a'la iframe w PHP problem z ładowaniem
adek-
post
Post #1





Grupa: Zarejestrowani
Postów: 124
Pomógł: 2
Dołączył: 19.04.2007
Skąd: Częstochowa

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


Witam, kombinuję w php aby mi strona index.php wyświetlała różne zawartości html/php w głównej jej części, w zależności od linka jaki kliknę i zrobiłem sobie coś takiego:
w index.php na środku czyli tam gdzie treść będzie zmienna
  1. header
  2. <?php
  3. pokaz($show,$id);
  4. ?>
  5. footer

no i porobiłem sobie plik funkcje który zaincludowałem do index.php
  1. function pokaz($mod,$id)
  2. {
  3. switch($mod)
  4. {
  5. case 'strona1': { strona1(); break; }
  6. case 'strona2': { strona2(); break; }
  7. default: { main(); break; }
  8. }
  9. }
  10. // funkcje zawartości stron
  11. function main()
  12. {
  13. echo 'Cała zawartość stony głównej';
  14. }
  15. function strona1()
  16. {
  17. echo 'Cała zawartość stony1';
  18. }
  19. // ...itd... i wywoływałem linkiem
  20. <a href="?show=strona1">Strona1</a>

Ale wymaga to register globals on! Jest jakieś obejście tego bez włączania registerek? Chyba, że ktoś zna bardzo podobną opcję funkcjonowania takich rzeczy ;/

=================
Wcześniej robiłem coś na zasadzie includowania plików, co już mi się znudziło i chciałem przejść na funkcje i case, odchodząc od ciągłych include...
  1. $id=$_GET['id'];
  2. if(empty($id) or $id=="main"){
  3. include("dane/main.php"); }
  4. if($id=="strona1"){ include("dane/strona1.php"); }
  5. if($id=="strona2"){ include("dane/strona2.php"); }

// i wywoływałem linkiem
<a href="index.php?id=strona1">Strona1</a>

Ten post edytował adek- 10.02.2012, 15:22:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
adek-
post
Post #2





Grupa: Zarejestrowani
Postów: 124
Pomógł: 2
Dołączył: 19.04.2007
Skąd: Częstochowa

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


Ad1. CuteOne, a ja wcale się nie wypierałem... próbowałem raczej się wytłumaczyć, że jednak jestem początkującym, a dopiero wieloletnie, bądź jakiekolwiek doświadczenie weryfikuje takie właśnie błędy.
Ad2. bezlik funkcji mam na myśli jeden plik, gdzie mam umieszczone wszystkie case'y na podstrony, a każda podstrona posiada swoje funkcje, gdzie zawarte jest wszystko dotyczące danej sekcji strony... dodawanie/usuwanie tabel i danych, jak i wyświetlanie tych danych potrzebnych w danej sekcji strony, funkcje odpowienich kalkulatorów, czy masy innych zmiennych, przez co ograniczam liczbę plików do jednego includa "funkcje.php".

Nie mówię, że jest to dobre rozwiązanie, po prostu dla mnie jak narazie najbardziej wygodne na stan mojej wiedzy dt. PHP/MySQL (IMG:style_emoticons/default/wink.gif)

Moją bolączke rozwiązała sprawa:
  1. if(isset($_GET['show'])) $show=$_GET['show']; else $show='main()';
  2. pokaz($show);
  3. //a jeszcze lepszym, bo zarazem krótszym rozwiązaniem było:
  4. $show = $_REQUEST['show'];


Nie mniej jednak CuteOne jestem ciekaw Twojego rozwiązania, bo być może jest 100 razy lepsze jako bardziej doświadczonego. Nie bardzo tylko wiem o co chodzi z funkcją która sprawdza plik cache i jego świeżość. Chodzi o coś co będzie sprawdzało datę utworzenia, bądź edycji danego pliku który ma zostać zaincludowany? Tzn w folderze /cache/ są inne pliki niż /inlcude/ różniące się aktualną zawartością?

Ten post edytował adek- 13.02.2012, 13:16:35
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: 11.10.2025 - 01:53