Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Javascript] Różnica od AJAX
Forum PHP.pl > Forum > Przedszkole
Pomocnik1
Witam.
Załóżmy, że mamy tabelę i dwie komórki gdzieś na stronie. Jedna do wpisywania, a druga pusta.
I robię tak, że jak coś się wpisze w tym pierwszym polu, to pojawia się od razu w drugim. I dzieje się to po kliknięciu prześlij. W kodzie robię to na zasadzie pobrania jednego elementu wykorzystując DOM i wrzucenia go w to drugie miejsce. Czy jest to AJAX, czy zwykły JS? Czym się różni AJAX od JS. Czytałem w kilku książkach o AJAX i wiem, że tam wykorzystuje się np. obiekt XMLHttpRequest. A jak z tego nie korzystam (chyba, że automatycznie się to robi i nie jestem tego świadomy), tylko robię w taki prosty sposób, to też można uznać, że korzystam z AJAX, bo nie następuje przeładowanie całej strony?
Pozdrawiam
Turson
AJAX może wysyłać żądanie do skryptu PHP (i innych), czyli w skrócie komunikować się z serwerem w czasie rzeczywistym
ikssde
To co ty robisz to zwykły JavaScript, mowa o AJAXie jest wtedy gdy twój kod JavaScript wykonuje asynchroniczne zapytanie do serwera (czyli wywołuje jakiś plik, ale bez przeładowania strony) i odbiera to co serwer zwróci. W ramach tego zapytania możesz też przesłać jakieś dane, dokładnie tak jak zwykłym formularzem. To co dostaniesz z powrotem możesz w jakiś sposób przetworzyć, np. zwrócić komunikat albo coś wyświetlić.
Pomocnik1
Cytat(ikssde @ 10.04.2015, 12:28:23 ) *
To co ty robisz to zwykły JavaScript, mowa o AJAXie jest wtedy gdy twój kod JavaScript wykonuje asynchroniczne zapytanie do serwera (czyli wywołuje jakiś plik, ale bez przeładowania strony) i odbiera to co serwer zwróci. W ramach tego zapytania możesz też przesłać jakieś dane, dokładnie tak jak zwykłym formularzem. To co dostaniesz z powrotem możesz w jakiś sposób przetworzyć, np. zwrócić komunikat albo coś wyświetlić.


Rozumiem. A jak miałbym np. taką tabelkę i w niej pola w których są wypisani wszyscy użytkownicy z bazy danych MySQL. I obok każdego miałbym przycisk usuń. I po naciśnięciu tego kasuje mi się ten użytkownik, że go nie widać na stronie, ale też kasuje mi się ten użytkownik w bazie danych. Wszystko dzieje się bez przeładowania strony. To też jest zwykły JS?
Turson
AJAX (ajax to też javascript)
phpion
Cytat(Pomocnik1 @ 10.04.2015, 13:26:16 ) *
I po naciśnięciu tego kasuje mi się ten użytkownik, że go nie widać na stronie, ale też kasuje mi się ten użytkownik w bazie danych.

Usuwanie rekordu z bazy robisz żądaniem AJAX, a usuwanie z tabelki na stronie - to zależy: jeśli chcesz po prostu usunąć wiersz to możesz usunąć element z drzewa DOM (JS, bez AJAXa), ale jeśli chcesz zaktualizować widok tabeli (np. przy stornicowaniu rekordów usuwając jeden w jego miejsce powinien wskoczyć inny) to musiałbyś z AJAXa otrzymać zwrotkę z aktualnymi danymi do wyświetlenia.
Pomocnik1
Cytat(phpion @ 10.04.2015, 13:37:05 ) *
Usuwanie rekordu z bazy robisz żądaniem AJAX, a usuwanie z tabelki na stronie - to zależy: jeśli chcesz po prostu usunąć wiersz to możesz usunąć element z drzewa DOM (JS, bez AJAXa), ale jeśli chcesz zaktualizować widok tabeli (np. przy stornicowaniu rekordów usuwając jeden w jego miejsce powinien wskoczyć inny) to musiałbyś z AJAXa otrzymać zwrotkę z aktualnymi danymi do wyświetlenia.


Na stronie kasuję tak jak mówisz, usuwam z DOM, czyli js czyste.
To tak podsumowując. Jeżeli kasuję coś na samej stronie na zasadzie usuwania tego z DOM, to jest to zwykły JS.
Jeżeli kasuję coś w bazie danych do tego to wtedy jest to już AJAX.
Dobrze zrozumiałem?
Turson
Powiedzmy, że AJAX jest potrzebny do interakcji z PHP, czego czysty JS nie może.
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.