Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] $_GET domyślna strona
Forum PHP.pl > Forum > Przedszkole
o2w5n778
Witam!
Mam mały problem, czy w metodzie get jest możliwość ustawienia domyślnego parametru startowego gdyby nie istniał taki który się poda?
Korab
  1. if (!isset($_GET['parametr']))
  2. $_GET['parametr']='Twoja wartość';

albo chyba można też tak:
  1. $_GET['parametr'] = $_GET['parametr'] || 'Twoja wartość';

Jakby ktoś dopisał jakąś fikuśną możliwość, byłbym wdzięczny.
Daiquiri
Możesz sprawdzić czy nie został ustawiony i nadać dowolną wartość np.
  1. if (!isset($_GET['parametr'])) {
  2. $_GET['parametr'] = 'abc';
  3. }

O to pytasz? smile.gif
o2w5n778
Bardziej jestem zaciekawiony jak zrobić tak jak np. w Joomli. Jeżeli podamy zły get zwraca nam 404. Mógł bym użyć funkcji empty to dało by mi możliwość ustawienia strony startowej ale wtedy co bym nie wpisał to otwierało by mi stronę startową
krowal
Cytat(o2w5n778 @ 4.12.2011, 16:39:08 ) *
Bardziej jestem zaciekawiony jak zrobić tak jak np. w Joomli. Jeżeli podamy zły get zwraca nam 404. Mógł bym użyć funkcji empty to dało by mi możliwość ustawienia strony startowej ale wtedy co bym nie wpisał to otwierało by mi stronę startową

Jest to beznadziejny pomysł ze względu na SEO i to że kilka urli będzie linkowało do tej samej treści. Lepiej w takim wypadku zrobić redirect z 301 lub pokazać 404 (logiczne skoro strona nie istnieje) niż pokazywać pod każdym nieistniejącym linkiem stronę główną.
o2w5n778
Ale to nie rozwiązuje mojego problemu jak pogodzić stronę startową z błędem podczas gdy wartość geta jest nieodpowiednia.
Chodzi mi dokładnie o to:
1. Wchodzę na stronę startową, wartość startowa ma np. adres site.pl/index.php?id=strona_glowna i chcę by się domyślnie otwierała po wejściu na adres site.pl/index.php (bez podawania geta)
2. Nie mogę użyć empty ponieważ wtedy co bym w geta nie wpisał będzie otwierać mi się strona startowa.
3. Jeżeli wpiszę np site.pl/index.php?id=niepoprawny_adres ma mi wyświetlić jakiś error zamiast błędu php że nie ma takiego geta
by_ikar
W switch możesz taką funkcjonalność osiągnąć lub, poprzez wiele warunków if .. elseif .. elseif .. aż wreszcie na samym końcu else które będzie odpowiednikiem nie spełnienia żadnego warunku (żadna podstrona, czyli strona domyślna/startowa).

Zamiast bawić się w mnogość warunków, polecam ci nawet jakiś prosty system routingu, który sprawniej sobie poradzi z adresami, niż w przypadku dziesiątek warunków wink.gif
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.