Otóż tworząc system postanowiłem zrobić coś nowego i wszystkie linki wymagające generowania urla ze zmiennymi zrobiłem przy pomocy input=submit.
Tak więc pokażę na przykładzie aby było jasne:
1. Klient się loguje (formularz)
2. Po zalogowaniu pokazuje mu się panel administracyjny, ale kolejne linki nie jako index.php?id=xxx&pg=konfiguracja&.... tylko jako kolejny submit.
Jako, że url w pasku adresu wymaga, dajmy na to, przekazania loginu i hasła (wiem, ze tak się nie robi, to tylko przykład), to aby submit przekazał hasło wpisuję:
<form method=POST action=index.php>
<input type=hidden value=$login name=login>
<input type=hidden value=$login name=login>
<input type=submit value=1 name=konfiguracja>
<input type=submit value=1 name=wpisuj_news>
<form>
I taki wpis zastępuje index.php?login=xxx&pass=xxx&pg=konfiguracja i index.php?login=xxx&pass=xxx&pg=dodaj_news
W częście kodu natiomiast jest taki fragment:
<?php { tutaj modół konfiguracji strony } { tutaj modół wpisywania tekstów } else: { powitanie } endif; ?>
W każdym z modółów może również być nieskończona ilość takich samych przekierowań, za każdym razem przesyłając przez formularz do pliku index.php potrzebne dane, aby po kolejnym otwarciu strony przez formularz (action=index.php) interpreter przeszedł do odpowiedniej części kodu.
Inaczej mówiąc, za każdym odświeżeniem strony przez formularz muszą zostać przesłane wszystkie do tej pory wpisane dane.
Tak więc: po zalogowaniu się, przyciski w panelu administracyjnym muszą zawierać ukryte hasło, login i mieć ustawiony przycisk "Loguj". Kiedy wejdziemy np. do menu konfiguracja, to wszystkie podmenu konfoguracji muszą mieć przekazane przez pole hidden: login, hasło, ustawiony przycisk Login i ustawiony przycisk Konfuguracja. Itd..
Tak więc dzięki takiemu rozwiązaniu powstaje system bez konieczności użycia paska adresów do przekazywania danych, gdyż wszystkie zmienne są przekazywane w głąb przez pole 'hidden'. Wydaje mi się, że to bardzo ułatwia stworzenie dowolnie dużego systemu nawet w jednym pliku (pomijając potocznie przyjęte ograniczenia objętości dla plików internetowych).
Co o takim systemie myślicie?
Edit: chodzi mi oczywiście o wykorzystanie tego do przekazywania zmiennych, których osoby postronne nie powinny znać