Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] problem z sesją - nie przekazuje sesji przy kliknięciu
--olek--
post
Post #1





Goście







Witam, mam problem z sesją w PHP, przeszukałem manuale i fora, ale problemu nie rozwiązałem, może ktoś z was pomoże (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Mianowicie robię stronkę, która prawie w całości jest w jednym pliku (index.php), w którym można się zalogować, wyświetla się wtedy to, co dla niezalogowanych ukryte. Kod jest długi, więc wrzucę tylko ważniejsze fragmenty:

Początek pliku:
  1. <?php
  2. if($_POST['logout']==1) $_SESSION['user'] = 0;
  3. ?>


Trochę później mamy wyświetlanie tego co dostępne tylko po zalogowaniu:
  1. <?php
  2. if(isset($_SESSION['user']) && $_SESSION['user']!=0) submenu(2, $_GET['sub']);
  3. ?>

( funkcja submenu() to moja funkcja wyświetlająca dodatkowe menu )

Natomiast po logowaniu przekazanie nazwy użytkownika do zmiennej sesyjnej wygląda tak:
  1. <?php
  2. if(haslo_ok($_POST['login'], $_POST['pass'])){
  3. $_SESSION['user'] = $_POST['login'];
  4. }
  5. ?>

Logowanie działa, natomiast po kliknięciu w jakiś link i przeładowaniu strony zmienna $_SESSION['user'] przestaje istnieć, większość linków mam zbudowane na sposób:
index.php?id=x&sub=y
Próbowałem więc dodać id sesji do adresu w ten sposób:
  1. <?php
  2. $sid = session_id();
  3. echo "<a href=\"index.php?id=1&sub=1&PHPSESSID=$sid\" class=\"normal\">jakis link </a>";
  4. ?>

ale w niczym to nie pomogło.

Męczę się z tym cały dzień, a sprawa jest dosyć pilna, jeśli ktoś ma pomysł co robię nie tak to z góry dzięki za pomoc!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
--olek--
post
Post #2





Goście







Cytat(krzysiekk @ 9.10.2007, 21:03:53 ) *
czesc a jakie masz kodowanie pliku podczs zapisu (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
ja miałem kiedys taki prblem ktory zniknął kiedy zmieniłem kodowanie na UTF-8 (podczas zapisu) z ANSI


Hmm, nie rozumiem pytania. Podczas zapisu czego? Jeśli pytasz o stronę kodową, to standardowo iso-8859-2, ale podejrzewam, że nie o to to pytanie.

Co do pytania o session_start() w pozostałych plikach, to tak jak to wcześniej pisałem nie ma na razie innych plików poza index.php, ale przy przeładowaniu tego pliku sesja gdzieś się "gubi".
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 21:14