• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Ustawienie zmiennej sesji przez ajax (chyba)

Object Storage Arubacloud
0 głosów
303 wizyt
pytanie zadane 2 września 2018 w JavaScript przez Ventrae Nowicjusz (180 p.)

Potrzebuję ustawić $_SESSION['Year'] w php na wartości konkretne 2018, 2019... po zdarzeniu onclick a następnie przeładować okienko. Korzystam w projekcie z jQuery. Wiem, że do tego mniej więcej służy ajax ale nigdy go nie rozumiałem. Kiedyś nawet coś napisałem przy jego użyciu podobnego, wyglądało to tak:
 

$.ajax({
                url: 'eq_ajax.php',	
		type: 'POST',							
		data: {x:x, y:y}, 	
                success: function (response) {
					//alert(response);
					window.location.reload();
                }
            });

działało, ale nie do końca to rozumiem. Mógłby ktoś pomóc? Parę słów wstępu w tym kierunku też by było miło ;/

1 odpowiedź

0 głosów
odpowiedź 2 września 2018 przez Tomek Sochacki Ekspert (227,510 p.)

Ajax to ogólne określenie technologii, która pozwala na wymianę danych między tzw. frontem i back-endem, a dokładniej mówiąc między środowiskiem klienta (przeglądarka), a serwerem. Są też inne, np. WebSocket, ale wszystko zależy od tego co dokładnie potrzeba zrobić.

A co do kodu:

(1)  $.ajax({
(2)    url: 'eq_ajax.php', 
(3)    type: 'POST',                           
(4)    data: {x:x, y:y},   
(5)    success: function (response) {
(6)       window.location.reload();
(7)    }
(8)  });

i teraz po kolei:

  1. tutaj wywołujemy metodę ajax obiektu jQuery, zapisywanego najczęściej jako $.
  2. tu wskazujemy cel naszgo requesta, Ty wskazujesz konkretny plik PHP, który ma zostać odpalony na sewerze
  3. ustawiamy metodę http, jest ich kilka, get, post, put, delete, patch... wybierasz w zależności od konkretnego celu.
  4. tutaj wskazujemy dane, które zostaną dołączone do requesta, jeśli dobrze pamiętam to jQuery już za Ciebie robi ich odpowiednią "obróbkę" aby były dobre do wysłania, więc Ty mozesz je podawać w formie normalnego obiektu JS.
  5. tutaj wskazujemy callback, czyli jaka funkcja ma zostać wywołana asynchronicznie gdy otrzymamy z serwerka status 200 i wszystko pójdzie oki. Response to odpowiedź z seerwera jaką dostaniesz po zakończeniu wymiany danych.
  6. tutaj wywołujesz przeładowanie strony po odebraniu danych z serwerka. Metoda reload bez żadnego parametru powoduje przeładowanie strony z cache dyskowego, a jeśli dodałbyś jej parametr TRUE to wymusiłoby to przeładowanie na nowo z serwera (tzw. force reload).
  7. 7 i 8 jest chyba jasne :)

Generalnie ja zawsze polecam osobom początkującym, aby choć raz samodzielnie "obrobiły" obiekt XMLHttpRequest i spróbowały pobawić się Promisami itp. po to, aby lepiej zrozumieć co tam pod spodem tak na prawdę się dzieje. A potem oczywiście najczęściej i tak korzysta się z bibliotek, albo jQuery albo mniejszych, dedykowanych właśnie do Ajax jak axios itp.

Podobne pytania

0 głosów
0 odpowiedzi 209 wizyt
pytanie zadane 17 marca 2018 w JavaScript przez Honter Użytkownik (690 p.)
+1 głos
2 odpowiedzi 132 wizyt
pytanie zadane 31 marca 2022 w PHP przez NoteDS Użytkownik (560 p.)
0 głosów
1 odpowiedź 411 wizyt
pytanie zadane 12 kwietnia 2019 w PHP przez Sinq Nowicjusz (120 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...