Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Nie mogę uruchomić sesji
Fakebook
post
Post #1





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

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


Witam

Utknałem tym razem w momencie gdy chcę zalogować się do bazy danych.

Plik loginform.inc.php zawiera formularz i sprawdza poprawność danych (i działa poprawnie, bo po podaniu odpowiedniego hasła i loginu wyświetla się właściwy rząd w tabeli), natomiast za diabła nie wiem dlaczego nie mogę odpalić sesji. Kod ma wg opisu albo wyswietlic 'You are logged in' po podaniu poprawnych danych, albo wyswietlic ponownie formularz logowania, i wygląda tak:
  1.  
  2. require 'connect.inc.php';
  3.  
  4. if (isset($_SESSION['user_id']) && !empty($_SESSION['user_id'])) {
  5. echo 'You are logged in';
  6. } else {
  7.  
  8. include 'loginform.inc.php';
  9. }

a tu jeszcze fragment pliku loginform.inc.php z przypisanym id sesji:
  1. if ($query_num_rows==1) {
  2. $user_id = mysql_result($query_run, 0, 'id');
  3. $_SESSION['user_id'] = $user_id;
  4. header('Location: index.php');

Rezultat jest taki, że wpisanie odpowiedniego loginu i hasła wyświetla ponownie formularz logowania, a nie komunikat 'you are logged in'.

Troche eksperymentowalem, wywaliłem loginform.inc.php poza warunek if:
  1. $current_file = $_SERVER['SCRIPT_NAME'];
  2.  
  3. require 'connect.inc.php';
  4.  
  5. include 'loginform.inc.php';
  6.  
  7. if (isset($_SESSION['user_id']) && !empty($_SESSION['user_id'])) {
  8. echo 'You are logged in';
  9. } else {
  10. echo 'try again';
  11. }

I zadzialalo, tzn po zalogowaniu sie dostaje prawidlowy komunikat.

Z tym ze w tutorialu jest tak jak w pierwszym przykładzie, i nie mam pojęcia dlaczego na filmiku działało a u mnie nie. Tutorial jest z 2011 roku, czy jest możliwość że zmieniła się struktura php i dlatego u mnie nie zadziałało?

Pozdrawiam
Powód edycji: [Kshyhoo]: Przypominam o używaniu bb-code
Go to the top of the page
+Quote Post

Posty w temacie
- Fakebook   [PHP][MySQL]Nie mogę uruchomić sesji   23.03.2014, 13:32:10
- - Kshyhoo   Pomyśl logicznie, Twój warunek: jeżeli istnieje ...   23.03.2014, 13:57:05
|- - Fakebook   Cytat(Kshyhoo @ 23.03.2014, 13:57:05 ...   23.03.2014, 14:22:03
- - Kshyhoo   No tak, miało być "nie pusta".   23.03.2014, 14:27:22
- - Fakebook   Dzięki, ale to są chyba warunki które się nie wykl...   23.03.2014, 14:44:15
- - Damonsson   Warunek jest dobry, nie słuchaj głupot. Musiałbyś ...   23.03.2014, 14:52:59
|- - Fakebook   Cytat(Damonsson @ 23.03.2014, 14:52:5...   23.03.2014, 16:32:24
|- - trueblue   Cytat(Fakebook @ 23.03.2014, 16:32:24...   23.03.2014, 17:06:23
||- - Fakebook   Cytat(trueblue @ 23.03.2014, 17:06:23...   23.03.2014, 19:49:40
|- - ZaXaZ   wymień [HTML] pobierz, plaintext <form action=...   24.03.2014, 00:06:33
|- - Fakebook   Cytat(ZaXaZ @ 24.03.2014, 00:06:33 ) ...   24.03.2014, 16:42:04
- - trueblue   A gdzie wyłączasz buforowanie rozpoczęte poprzez o...   23.03.2014, 14:59:00
- - trueblue   Zakomentuj ob_start(); i wrzuć przed linią 6 (w pi...   24.03.2014, 16:55:35
|- - Fakebook   Cytat(trueblue @ 24.03.2014, 16:55:35...   24.03.2014, 18:12:43
- - com   no a gdzie session_start(); w index?   24.03.2014, 18:16:43
- - Fakebook   [PHP] pobierz, plaintext <?php session_sta...   24.03.2014, 18:20:39
- - Dyktus   Ja widzę session_start() na początku. Spróbuj zr...   24.03.2014, 18:25:38
- - Fakebook   Cytat(Dyktus @ 24.03.2014, 18:25:38 )...   25.03.2014, 08:43:37
- - Dyktus   Spróbuj na samym początku swojego kodu podać coś t...   25.03.2014, 17:55:49
|- - Fakebook   Cytat(Dyktus @ 25.03.2014, 17:55:49 )...   26.03.2014, 01:14:13
- - Dyktus   Cieszę się, że pomogłem Masz kolejne doświadczen...   26.03.2014, 10:31:45


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: 24.12.2025 - 01:45