Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [PHP]Undefined index: id in
xxdrago
post
Post #1





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

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


Witam, uczę się pisać strony bez błędów i mam takie pytanie czy da się napisać stronę bez tych błędów a zarazem używając switch ($_GET['id'])

Błędy typu:
Kod
Notice: Undefined index: id in


--------------------
GG: 10972302 :)
Go to the top of the page
+Quote Post
abort
post
Post #2





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

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


isset() Twoim przyjacielem.

if (isset ($zmienna)) {
switch ($zmienna) {
[... lista 'case'...]
}
}


Przy okazji:
1. nie błędy, ale "warningi" - informacje od interpretera, że zmienna nie została zdefiniowana.
2. Dobrze robisz, że włączasz warningi podczas pisania programu.
Go to the top of the page
+Quote Post
Kostek.88
post
Post #3





Grupa: Zarejestrowani
Postów: 376
Pomógł: 47
Dołączył: 23.08.2007
Skąd: Warszawa

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


  1. if( isset($_GET['zmienna']) && strlen($_GET['zmienna']) > 0) {
  2. // kod ...
  3. }


Ja robie zawsze tak, jesli zalezy mi, zeby nie dodawal pustych rekordow do bazy, zwlaszcza jak mam ustawione w MySQL NOT NULL, co spowoduje dodatkowy blad...
Go to the top of the page
+Quote Post
by_ikar
post
Post #4





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Mamy DRY, to warto byłoby się do tego stosować i zamiast biliona issetów, zrobić sobie jakąś funkcję, przykładowo taką:

  1. <?php
  2.  
  3. function getParam($key, $default = null)
  4. {
  5. return isset($_GET[$key]) ? $_GET[$key] : $defautl;
  6. }


Użycie:

  1. <?php
  2.  
  3. echo getParam('id');


Kiedy nie będzie takiego klucza w tablicy $_GET funkcja zwróci nam wartość domyślną, czyli null. Jeżeli potrzebujemy otrzymać jakąś inną wartość domyślną, to wstawimy jako drugi parametr tą wartość:

  1. <?php
  2.  
  3. echo getParam('id', 'strona nie istnieje');
Go to the top of the page
+Quote Post
wookieb
post
Post #5





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Dość. Do nauki i używać google. Zamykam.


--------------------
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:34