Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][PHP]Problem z $_SESSION
Forum PHP.pl > Forum > Przedszkole
Mikiisz
Witam.
Jestem jeszcze troche zielonkawy z AJAX'em dlatego potrzebuje pomocy.
Otóż mam staki skrypt w JQuery
  1. $.post('name.php',{login: login, haslo: haslo}, function(dane){
  2. //tu dalsza częśc kodu
  3. }


plik name.php wyglląda tak:

  1. $_SESSION['user'] = $_POST['login'];
  2. //dalszy kod


I teraz problem:
Zmienna sesyjna zostaje przypisana w przeglądarkach: IE, Firefox, Maxthon, natomiast Chrome zachowuje się tak jakby ta znienna nie istniała.
W czym jest problem?
Z góry dziękuje
markuz
Skoro nie działa tylko w Chrome to wina leży po stronie JavaScript.
W podanym kodzie brakuje Ci ) na końcu ale nie wiem czy to właściwy kod czy tylko przykład.

Otwórz konsole Ctrl + Shift + I i pokaż błędy jeżeli istnieją.
Wejdź w zakładkę Sieć/Network, wyślij formularz, znajdź żądanie do pliku name.php i PPM -> Kopiuj jako cURL a następnie wklej wynik tutaj.
Mikiisz
@markuz
W kodzie mam domkniętą klamre.
wynik cURL:
curl "http://localhost:8080/ajax/name.php" -H "Origin: http://localhost:8080" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: pl-PL,pl;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -H "Accept: */*" -H "Referer: http://localhost:8080/ajax/" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "login=sd&haslo=dssdsd" --compressed

Consola błędów nie wywala
markuz
To teraz w pliku name.php na początku wklej:

  1. $_SESSION['user'] = $_POST['login'];
  2. var_export($_POST);
  3. var_export($_SESSION);
  4. die();


I w zakładce Sieć/Network wybierz to żądanie i wklej tutaj zawartość zakładki Odpowiedź/Response.
Mikiisz
Proszę:
curl:
curl "http://localhost:8080/ajax/name.php" -H "Origin: http://localhost:8080" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: pl-PL,pl;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" -H "Accept: */*" -H "Referer: http://localhost:8080/ajax/index.php" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "login=sd&haslo=sdsdds" --compressed

Odpowiedź:
array (
'login' => 'sd',
'haslo' => 'sdsdds',
)array (
'user' => 'sd',
)

Widze że została utworzona zmienna sesyjna. Dziwne bo jak przechodze do kolejnego pliku i mam warunek

  1. if( isset( $_SESSION['user'] ) ){
  2. //kod
  3. }


to się nic nie realizuje

Okej, rozwiązałem to dziadostwo.
Zresetowałem ustawienia przeglądarki i działa jak powinno. facepalmxd.gif
@markuz Dzięki za czas i pomoc yahoo.gif
Pozdrawiam
com
w drugim pliku session_start na początku musi być też wink.gif
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.