Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Notice: Undefined index
wSBk
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 13.04.2007

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


Witam.
Wykozystując skrypt z Algorytmy.pl po uruchomieniu zwraca mi taki błąd:
Notice: Undefined index: login in /var/www/html/intranet/index.php on line 38
Notice: Undefined index: haslo in /var/www/html/intranet/index.php on line 39
Notice: Undefined index: akcja in /var/www/html/intranet/index.php on line 41

  1. <?php
  2. 38. $login = $_POST["login"];
  3. 39. $haslo = $_POST["haslo"];
  4. 40.
  5. 41. if ($_GET["akcja"]=="wyloguj") { // wylogowanie
  6. ?>

Czego dotyczy ten błąd?
Go to the top of the page
+Quote Post
Cezar708
post
Post #2





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


to nie jest blad tylko Notice, czyli interpretator PHP mówi Ci:

"Słuchaj w tablicy $_POST nie ma klucza `login`"

widocznie w momencie gdy wywolujesz ten skrypt nie jest jeszcze do $_POSTa zapisana ta wartosc

warto w takich momentach uzywac http://pl2.php.net/manual/en/function.isset.php lub http://pl2.php.net/manual/en/function.empty.php
Go to the top of the page
+Quote Post
RAFAELLO14
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 7.05.2007

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


a co do GETa mozesz zrobic tak
  1. <?php
  2. if( isset($_GET["akcja"]))
  3. {
  4.  if ($_GET["akcja"]=="wyloguj")
  5. {
  6. }
  7. }
  8. ?>


Ten post edytował RAFAELLO14 7.05.2007, 13:58:47
Go to the top of the page
+Quote Post
strife
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Ten błąd dotyczy błędnego/złego deklarowania zmiennych. Zakładam, że po odpaleniu skryptu nie zostają żadne dane wysłane metodą $_POST. Czy mam rację możemy łatwo sprawdzić:

  1. <?php
  2. echo '<pre>';
  3. var_export( $_POST );
  4. echo '</pre>';
  5. ?>


Cytat
Notice: Undefined index: login in /var/www/html/intranet/index.php on line 38


Czy istnieje, klucz login, w tablicy $_POST - nie. Dopiero po wysłaniu zostaje od wysłany/zadeklarowany. Aby uniknąć tego typu błędów możesz posłużyć się isset" title="Zobacz w manualu PHP" target="_manual

  1. <?php
  2. if ( isset( $_POST['login'] ) ) {
  3. $login = $_POST["login"];
  4. }
  5. if ( isset ( $_POST['haslo'] ) ) {
  6. $haslo = $_POST["haslo"];
  7. }
  8.  
  9. if ( isset( $_GET["akcja"] ) ) { 
  10. if ( $_GET['akcja'] == 'wyloguj' ) { // wylogowanie
  11. ?>


Więcej na ten temat znajdziesz w manualu i na forum pod hasłem raportowanie błędów.

Pozdrawiam.
Go to the top of the page
+Quote Post
wSBk
post
Post #5





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 13.04.2007

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


Super dziękuję za pomoc.
Prosiłbym jeszcze o przetłumaczenie tej informacji:

Notice: Undefined variable: login in /var/www/html/intranet/index.php on line 50


  1. <?php
  2. } else if ($login<>"" and $haslo<>"") {
  3. ?>
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(wSBk @ 7.05.2007, 15:43:59 ) *
Prosiłbym jeszcze o przetłumaczenie tej informacji:
No chyba sobie z nas żartujesz (IMG:http://forum.php.pl/style_emoticons/default/angrysmiley.gif)
translatica.pwn.pl
Go to the top of the page
+Quote Post
wSBk
post
Post #7





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 13.04.2007

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


generalnie nie chodzi tu o angielski lecz o programowanie.
Go to the top of the page
+Quote Post
kwiateusz
post
Post #8


Admin Techniczny


Grupa: Administratorzy
Postów: 2 071
Pomógł: 93
Dołączył: 5.07.2005
Skąd: Olsztyn




no to po przetłumaczeniu dowiesz sie ze podobnie jak z tym indexem czyli zadeklaruj zmienna wcześniej...
Go to the top of the page
+Quote Post

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: 28.08.2025 - 22:30