Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Nie definiuje zmiennych sesji
Forum PHP.pl > Forum > Przedszkole
Geble
Witam,

mam następujący problem. Otóż po włączeniu stronki wszystko działa tak jak powinno lecz dostaje następujące komunikaty na stronie w niektórych miejscach.

Cytat
Notice: Undefined index: user_id in C:\xampp\htdocs\Projekt\sidebar.php on line 3

Cytat
Notice: Undefined index: user_level in C:\xampp\htdocs\Projekt\sidebar.php on line 10


Poniżej kod sidebar.php

Kod
<a href="index.php" onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Strona główna</a><br />
<?php if(!$_SESSION['user_id']){ ?>
<a href="logowanie.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Logowanie</a><br />
<a href="rejestracja.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Rejestracja</a><br />
<?php }else{ ?>
<a href="logout.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Wyloguj</a><br />
<a href="koszyk.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Wybierz gadżet</a><br />
<?php } ?>
<?php if($_SESSION['user_level']==1){ ?>
<a href="admin.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Admin</a><br />
<?php } ?>
<a href="onas.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">O nas</a><br />
<a href="oferta_specjalna.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Oferta specjalna</a><br />
<a href="mailto:piotr.januszek@onet.pl"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Kontakt</a><br>
Albaniusz
Odpytujesz tablice o nieistniejące indeksy. Zrób coś takiego:
  1. if (!key_exists('user_id', $_SESSION) || !$_SESSION['user_id']) {


Ew. wyłącz wypisywanie notyfikacji - co nie jest, co prawda, dobrą praktyką.
Geble
Rzeczywiście teraz przy włączaniu strony głównej nie ma tych komunikatów, ale jak kliknę w logowanie lub rejestrację wyskakują następujące komunikaty:

Cytat
Warning: key_exists() expects parameter 2 to be array, null given in C:\xampp\htdocs\Projekt\sidebar.php on line 3

Cytat
Warning: key_exists() expects parameter 2 to be array, null given in C:\xampp\htdocs\Projekt\sidebar.php on line 10


Pewnie coś sknociłem przy tym drugim, czylu tutaj:

  1. if (!key_exists('user_level', $_SESSION) || !$_SESSION['user_level']==1)


Tak wygląda teraz sidebar.php:

  1. <a href="index.php" onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Strona główna</a><br />
  2. <?php if (!key_exists('user_id', $_SESSION) || !$_SESSION['user_id']) { ?>
  3. <a href="logowanie.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Logowanie</a><br />
  4. <a href="rejestracja.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Rejestracja</a><br />
  5. <?php }else{ ?>
  6. <a href="logout.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Wyloguj</a><br />
  7. <a href="koszyk.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Wybierz gadżet</a><br />
  8. <?php } ?>
  9. <?php if (!key_exists('user_level', $_SESSION) || !$_SESSION['user_level']==1) { ?>
  10. <a href="admin.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Admin</a><br />
  11. <?php } ?>
  12. <a href="onas.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">O nas</a><br />
  13. <a href="oferta_specjalna.php"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Oferta specjalna</a><br />
  14. <a href="mailto:piotr.januszek@onet.pl"onmouseover="style.color = '#484848'" onmouseout="style.color = '#000000'">Kontakt</a><br>


Kolejne komunikty, które również pojawiają się po kliknięciu w logowanie lub rejestrację:

Cytat
Notice: Undefined variable: _SESSION in C:\xampp\htdocs\Projekt\sidebar.php on line 3

Cytat
Notice: Undefined variable: _SESSION in C:\xampp\htdocs\Projekt\sidebar.php on line 10


Sesja oczywiście rozpoczęta w pliku index.php
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.