Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] sesja nie chce się uruchomić
Forum PHP.pl > Forum > Przedszkole
Mgorka
siema mam problem z sesją która nie chce się właczyc albo nie chce wypełnić danych sesyjnych sam nie wiem dodaje kod

plik logowania
  1. <?php
  2. if (!isset($_SESSION['login'])) {
  3. ?>
  4.  
  5.  
  6.  
  7. <form method="post" action="transact-user.php">
  8. <p>
  9. Nazwisko:
  10. <input type="text" name="login" maxlength="255" value="">
  11.  
  12. Hasło:
  13. <input type="password" name="passwd" maxlength="50">
  14.  
  15.  
  16. <input type="submit" class="submit" name="action" value="Zaloguj">
  17. </p>
  18. </form>
  19.  
  20.  
  21.  
  22. <?php
  23. }else{
  24.  
  25.  
  26.  
  27. echo ' Witaj ' . $_SESSION['login'] . '. ';
  28.  
  29.  
  30. }
  31. ?>

no i plik od przetwarzania tego
  1. <?php
  2. require_once 'conn.php';
  3. require_once 'http.php';
  4.  
  5. if (isset($_REQUEST['action'])) {
  6. switch ($_REQUEST['action']) {
  7. case 'Zaloguj':
  8. if (isset($_POST['login'])
  9. and isset($_POST['passwd']))
  10. {
  11. $sql = "SELECT * " .
  12. "FROM user " .
  13. "WHERE login='" . $_POST['login'] . "' " .
  14. "AND passwd='" . $_POST['passwd'] . "'";
  15. $result = mysql_query($sql, $conn)
  16. or die('Could not look up user information; ' .
  17.  
  18. if ($row = mysql_fetch_array($result)) {
  19. $_SESSION['passwd'] = $row['passwd'];
  20. $_SESSION['access_lvl'] = $row['access_lvl'];
  21. $_SESSION['login'] = $row['login'];
  22.  
  23. }
  24. }
  25. redirect('index.php');
  26. break;


zauważyłem też że dane sesyjne nie są przekazane dalej tak jak by sesja ich nie tworzyła albo w ogóle nie startowała
Wicepsik
Gdzie session_start w pliku logowania?
Mgorka
20 linijka drugiego pliku
Wicepsik
W każdym pliku musisz dać na samym początku session_start
sadistic_son
session_start musi być na dzień dobry w każdym pliku!!!
Fifi209
Cytat(sadistic_son @ 21.09.2010, 17:18:26 ) *
(...) każdym pliku!!!

w którym będziesz używał sesji smile.gif

bo potem zacznie wszędzie walić te session_start.
Mgorka
ale to i tak nie działa robiłem test na osobnym pliku za pomoca print_r($_SESSION) i nic mi nie wyświetla
Fifi209
Cytat(Mgorka @ 21.09.2010, 17:25:34 ) *
ale to i tak nie działa robiłem test na osobnym pliku za pomoca print_r($_SESSION) i nic mi nie wyświetla


Pokaż swój testowy plik, napisz nam jakie kodowanie znaków dla tego pliku ustawiłeś.
TomASS
a powiedz co się dzieje jak dasz:

  1. <?
  2.  
  3. if (!isset($_SESSION['count'])) {
  4. $_SESSION['count'] = 0;
  5. } else {
  6. $_SESSION['count']++;
  7. }
  8.  
  9.  
  10. echo '<pre>';
  11. print_r($_SESSION);
  12. echo '</pre>';
  13. ?>


i odświeżysz parę razy?
Mgorka
gdzie wstawić ten kod?? Urzywam kodowania UTF-8 na każdym pliku
  1. <?php
  2. print_r($_SESSION);
  3. ?>
Fifi209
Cytat(Mgorka @ 21.09.2010, 17:35:54 ) *
Urzywam kodowania UTF-8 na każdym pliku


Koduj w UTF8 bez BOM
Mgorka
Cytat(TomASS @ 21.09.2010, 17:33:48 ) *
a powiedz co się dzieje jak dasz:

  1. <?
  2.  
  3. if (!isset($_SESSION['count'])) {
  4. $_SESSION['count'] = 0;
  5. } else {
  6. $_SESSION['count']++;
  7. }
  8.  
  9.  
  10. echo '<pre>';
  11. print_r($_SESSION);
  12. echo '</pre>';
  13. ?>


i odświeżysz parę razy?

nic nie pokazuje

z tym samym kodowaniem mam inna stronke napisaną z logowaniem z podobnym stylem i wszystko chodzi bez zająknięcia
TomASS
czyli raczej nie problem z kodem tylko z konfiguracją - testujesz na localhost czy na serwerze? Może katalog tmp z sesjami się zapchał (przekroczył quotę).
Mgorka
localhost używam xampp. Co najśmieszniejsze tamta strona właśnie sprawdzałem na locahost działa bez zarzutu. w tmp nie widzę żadnej sesji otartej przez tą stronę

teraz po zalogowaniu treść strony nie chce się przełączyć a w pliku tmp mam zarejestrowaną sesję
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.