Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ajax] Moje pierwsze starcie
Forum PHP.pl > Wortal > Artykuły
Stron: 1, 2, 3
bigZbig
Mozesz wyslac jedno zapytanie do serwera i odbierac wynik w postaci pliku XML. Po napisaniu parsera wyciagajacego z pliku XML poszczegolne elementy mozesz aktualizowac drzewo DOM dokumentu w kilku miejscach za jednym zamachem.
anAKiN
Cytat
no i problem jkest w tym, że z tego formularza dochodzi tablica, ale tylko z pierwszym wpisem value=1 (count($zaznacz_mnie) zwraca 1)..da sie jakoś to ominąc..? czy advAJAX.assign() "potrafi"wysyłac tablice? spotkał sie może ktoś kiedyśz takim przypadkiem?

To jest jeden w błędów wersji 1.0, będzie poprawione w 1.1. Odnośnie 1.1, będzie również możliwość wstawiania paska postępu ładowania, ale tylko w Firefoxie, póki co. Ogolnie będzie kilka nowych metod i atrybutów, zwiększających funkcjonalność całości. Planuję także wrzucić advAJAX_History, który pozwoli na tworzenie odnośników wykorzystujących advAJAXa, na które będzie reagować mechanizm historii przeglądarki, więc będzie można bez problemu korzystać z przycisków "Dalej", "Wstecz", jak również dodawać stronę do zakładek.
chomiczek
a kiedy mozna spodziewać się wersji 1.1??
anAKiN
Cytat
a kiedy mozna spodziewać się wersji 1.1??

Na koniec przyszlego tygodnia, prawdopodobnie.
TomASS
Cytat
Na koniec przyszlego tygodnia, prawdopodobnie.

szybki jestes tongue.gif

czekam i nieomieszkam przetestować smile.gif
kukix
Cytat(anAKiN @ 2006-03-22 23:06:28)
Na koniec przyszlego tygodnia, prawdopodobnie.

Przydałyby sie też jakieś ciekawe przykłady... zastosowania advAJAX'a 1.1 ... może np cośw rodzaju Sortowane menu w najprostszej wersji..., może jakiś mały czat... cool.gif pozdr....
anAKiN
AdvancedAJAX 1.1
http://anakin.us/blog/advancedajax-11/
TomASS
Szkoda, że onProgress działa tylko na Mozili sad.gif Bardzo fajna sprawa.
michalr
jak jest z tym "url:"

czy mozna pobierac tez dane nie z lokalnego serwera ( url: "jakislokalnyplik.php", .. ) tylko odwolujac sie url: "http://.."

bo cos mi to nie dziala jak pobieram z innego
Radarek
Mozesz pobierac tylko dane z serwera, z ktorego zostal wywolany skrypt (np. php). Wzgledy bezpieczenstwa smile.gif.
kukix
Cytat(anAKiN @ 2006-03-22 12:40:18)
Cytat
no i problem jkest w tym, że z tego formularza dochodzi tablica, ale tylko z pierwszym wpisem value=1 (count($zaznacz_mnie) zwraca 1)..da sie jakoś to ominąc..? czy advAJAX.assign() "potrafi"wysyłac tablice? spotkał sie może ktoś kiedyśz takim przypadkiem?

To jest jeden w błędów wersji 1.0, będzie poprawione w 1.1. Odnośnie 1.1.

Wlasnie testuje advAJAX 1.1 i chyba dalej jest problem z tymi tablicami.. pobiera mi tylko pierwszą i ostatnią wartośc z zaznaczonych pół... chyba dalej jest ten błąd.. ale jużchociaż lepiej niż przedtem... cool.gif
anAKiN
Fakt. Poprawione:
http://advajax.anakin.us/opera/test4.html

Cytat
Szkoda, że onProgress działa tylko na Mozili sad.gif Bardzo fajna sprawa.

Ze mną jak z dzieckiem winksmiley.jpg To chyba jedyna implementacja na XHR która obsługuje onProgress w Operze.
http://anakin.us/blog/onprogress-w-operze/
kukix
OK.. teraz tablice śmigają elegancko ...

Szkoda, że onProgress działa tylko na Mozili i Operze.. w sumie to większość internautów dalej korzysta z IE... sad.gif
TomASS
W Operze to działa połowicznie...
anAKiN
Cytat(TomASS @ 2006-03-29 22:00:59)
W Operze to działa połowicznie...

A moze konkretniej i na maila? Malo mi to mowi. Zreszta z tego co sam testowalem i kilka innych osob, onProgress w Operze dziala tak jak w Mozilli.
TomASS
Wybacz Łukaszu moje niedoinformowanie. Otóż testowałem onProgress w ten sam dzień co się ukazała werska 1.1 i działało tylko na FF, w Operze było 4% i odrazu 100% - także napisałem, że działa 'połowicznie'. Teraz jest wszystko w prządku i działa bez zarzutu. Sorki za wprowadzenie lekkiej nutki haosu smile.gif
kukix
A co z polskimi literami?
Wysyłając formularz funkcją advAJAX.assign() polskie litery zmieniają sie na jakieś znaczki, kwadraciki... sprawdzałem w phpmyadminie też nie wyświetlają sie polskie litery...

No ale z drugiej strony znaczki dobrze wyświetlają sie przez advAJAX.get()... co z tym zrobić...?

Na forum Skryptoteka.pl byl ten sam problem, ale coś nie moge tego rozwiązac..
Dałem do pliku w którym zapisuje dane z formularza ajaxa:
Kod
header("Content-Type: text/html; charset=iso-8859-2");

ale to nie pomaga..
chomiczek
Gdzieś wyczytałem, w tej chwili nie pamiętam źródła, że przekazując dane z php do JS należy używać UTF, aby te dane były poprawnie przekazane.

O już znalazłem:
artykuł pt.: "ĄŚŹ czyli polskie ogonki w internecie" zamieszczony w magazynie INTERNET z listopada 2005r., zdaniem autora jedynym sposobem na rozwiązanie tego problemu jest UTF-16.
Vogel
z moich zabaw z komunikacją Flash <-> JS <-> HTML wynika ze to mozwe byc prawda. Jak na razie tylko z kodowaniem w Operze nie mialem klopotow, ale Firefox i MSIE maja ogromna "dziure" w kodowaniu znakow na linii komunikacji z JS (w samym JS jest ok, ale przesylanie danych do JS sie krzaczylo) :-/

polowicznym rozwiazaniem bylo wprowadzenie przeze mnie "translatora" (zmieniamy polskie czcionki na jakies zdefiniowane prez nas ciagi, przesylamy tresc do JS a JS wprowadza nam PL znaczki w miejscu wprowadzonych przez nas znacznikow). Sęk w tym że ta ostatnia częśc (przetwarzanie w JS) może w widoczny sposob spowalniać wyświetlenie załadowanej treści, zwłaszcza gdy mamy do czynienia z długimi tekstami.
mariuszn3
Do przesyłania różnych dziwnych znaczków (w tym polskich znaków diaktrycznych) przez url jest w js taka funkcja jak encodeURIcomponent()
pawel_k
nie wiem czy to jest błąd czy przemyślana sytuajcja ale czemu przy wysyłniu formularza w advAjax (za pomocą ajax.assign) nie wysyła pola <input type="submit" /> ?

btw. co do polskich znaków wysłanych za pomocą ajaxa to poradziłem sobie w następujący sposób:
  1. <?php
  2.  
  3. foreach($_POST as $k => $v)
  4. {
  5. $_POST[$k] = mb_convert_encoding($_POST[$k], "UTF-8","UTF-8");
  6. }
  7. ?>
poźniej za pomocą Creole wstawiam dane do postgresa, bez mb_convert_encoding nie wstawiał mi danych, wywalał błędy o złych znakach. dziwna jest tylko ta zmiana z UTF-8 na UTF-8 biggrin.gif
chomiczek
a ja właśnie sprawdziłem kwestie kodowania i nie trzeba stosować UTF-16, wystarczy UTF-8, plik w którym używam AJAXa jest kodowany UTF-8, plik towrzący XMLa jest kodowany w UTD-8 oraz sam wygenerowany XML jest zakodowany w UTF-8 i nie ma żadnych problemów biggrin.gif
Zepco
Cytat(Radarek @ 2006-03-27 12:35:11)
Mozesz pobierac tylko dane z serwera, z ktorego zostal wywolany skrypt (np. php). Wzgledy bezpieczenstwa smile.gif.

Da się to jakoś ominąć zmieniając ustawienia przeglądarki (np. w firefox poprzez about:config)?


-- edit --

Znalazłem, ale pewnie działa tylko w przeglądarkach z silnikiem Gecko. Dobre i to.
A oto kod:

Kod
try {
    netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
   } catch (e) {
    alert("Permission UniversalBrowserRead denied.");
   }


Ewentualnie w about:config ustawić
signed.applets.codebase_principal_support na true
chomiczek
Cytat(Zepco @ 2006-04-02 17:55:34)
Da się to jakoś ominąć zmieniając ustawienia przeglądarki (np. w firefox poprzez about:config)?

Wystarczy tylko przeczytać tutaj masz odpowiedź co i jak, a także informacje o ewentualnych zmianach w about:config
kukix
Cytat(pawel_k @ 2006-04-01 17:13:51)
co do polskich znaków wysłanych za pomocą ajaxa to poradziłem sobie w następujący sposób:
  1. <?php
  2.  
  3. foreach($_POST as $k => $v)
  4. {
  5.     $_POST[$k] = mb_convert_encoding($_POST[$k], "UTF-8","UTF-8");
  6. }
  7. ?>

Witam.
Jak to jest z tymi polskimi literami...?
Podczas zapisywania formularza przez advAJAX.assign() i wyświetlania przez advAJAX.get() to jest ok.. ale już na "zwykłej" stronie nie.. jak zmienie phpmyadminem wpis w bazie.. tzn dodam polskie litery to advAJAX.get() wyświetla krzaczki...

Natomiast dodane w phpmyadminie polskie litery wyświetlają sie dobrze na "zwykłej" stronie... Jak rozwiązać ten problem.. i na jakim etapie.. zapisu, czy odczytu danych z bazy...? Prosze o pomoc..

wszystkie posty na temat polskich liter nic mi nie mówią...
TomASS
Hej. Może by tak kolejny przykładzik kogoś zainteresował ? smile.gif

Bardzo często przy moich projektach spotykam się z proźbą klienta o możliwość 'kolorowania' poszczególnych wierszy w tabeli (rekordów). Fajna sprawa - klient np. zaznacza jakieś ważna dla drugiej strony rekordy na czerwono i już jest wiadomo o co chodzi. Jednak jest (był) mały problem - po każdorazowym pokolorowaniu wiersza trzeba było odświeżyć stronę. Naszczęście z pomocą mi przyszedł mi AJAX smile.gif Oto co wykombinowałem:

Potrzebujemy oczywiście advAJAX.
Struktura bazy danych:
  1. CREATE TABLE `kolory` (
  2. `ID` int(10) NOT NULL AUTO_INCREMENT,
  3. `Kolor` varchar(7) DEFAULT NULL,
  4. `ID_rekord` int(10) DEFAULT NULL,
  5. UNIQUE KEY `ID` (`ID`)
  6. );


Teraz, gdy mamy odpowiednią tabelę dla naszych rekordów i w niej pole `Kolor` możemy zabrać się za wyświetlenie tychże rekordów. Plik proba.php :
  1. <html>
  2.  
  3. <head>
  4. </head>
  5. <script>
  6. function $(id){
  7.  return document.getElementById(id);
  8. }
  9. function okienko(strona){
  10.     window.open(strona, '', 'menubar=yes,toolbar=yes,location=yes,directories=yes,status=yes,scrollbars=yes,r
    esizable=yes,fullscreen=no,channelmode=no,width=200,height=300,left=150,top=100');
  11. }
  12. </script>
  13. <body>
  14. <table border="1">
  15. <?
  16. $dbhost = 'localhost';
  17. $dblogin = root;
  18. $dbhaslo = '';
  19. $db = test;
  20.  
  21. mysql_connect ("$dbhost","$dblogin","$dbhaslo") or die ("Nie masz uprawnien");
  22. mysql_select_db ("$db");
  23.  
  24. for($i=1;$i<10;$i++){
  25.     $query = "SELECT Kolor FROM kolory WHERE ID_rekord=$i LIMIT 1";
  26.     $result = mysql_query($query);
  27.     $row = mysql_fetch_array($result);
  28.     $kolor = $row['Kolor']?$row['Kolor']:'#723F42';
  29.     echo "<tr id=\"tr$i\" style='background: $kolor'>";
  30.       echo '<td>'.$i.'</td>';
  31.       echo '<td>'.($i*2).'</td>';
  32.       echo '<td>'.($i*3).'</td>';
  33.       echo "<td><button onclick=\"okienko('paleta.php?id=".$i."');\"></button></td>";
  34.     echo '</tr>';
  35. }
  36. ?>
  37. </table>
  38. </body>
  39. </html>

Chyba nic nazwyczajnego, proste wyswietlanie rekordow - idziemy dalej....
plik paleta.php , który odpowiedzialny jest za pobranie koloru z palety:
  1. <table width="50px;">
  2. <tr><td bgcolor='#5478A4' onclick="wybierz_kolor('#5478A4');" style="curosr: hand;">&nbsp;</td><td bgcolor='#A534EF' onclick="wybierz_kolor('#A534EF');" style="curosr: hand;">&nbsp;</td></tr>
  3. <tr><td bgcolor='#84D6E2' onclick="wybierz_kolor('#84D6E2');" style="curosr: hand;">&nbsp;</td><td bgcolor='#19D2A5' onclick="wybierz_kolor('#19D2A5');" style="curosr: hand;">&nbsp;</td></tr>

za 'dynamiczne' pokolowanie tabelki:
  1. opener.$('tr<?echo $_GET['id'];>').style.background=kolor;

oraz zapisanie do bazy danych:

  1. advAJAX.post({
  2.           url : "zapisz_kolor.php",
  3.           parameters:{
  4.                kolor: kolor,
  5.                id: '<?echo $_GET['id'];?>'
  6.   },
  7.   onSuccess : function(obj) {
  8.   }
  9. });
Cały plik wygląda następująco:
  1.  
  2. </head>
  3. <script type="text/javascript" src="advajax.js"></script>
  4. function wybierz_kolor(kolor){
  5.     opener.$('tr<?echo $_GET['id'];?>').style.background=kolor;
  6.     advAJAX.post({
  7.             url : "zapisz_kolor.php",
  8.             parameters:{
  9.                 kolor: kolor,
  10.                 id: '<?echo $_GET['id'];?>'
  11.             },
  12.             onSuccess : function(obj) {
  13.             }
  14.    });
  15. }
  16. <table width="50px;">
  17. <tr><td bgcolor='#5478A4' onclick="wybierz_kolor('#5478A4');" style="curosr: hand;">&nbsp;</td><td bgcolor='#A534EF' onclick="wybierz_kolor('#A534EF');" style="curosr: hand;">&nbsp;</td></tr>
  18. <tr><td bgcolor='#84D6E2' onclick="wybierz_kolor('#84D6E2');" style="curosr: hand;">&nbsp;</td><td bgcolor='#19D2A5' onclick="wybierz_kolor('#19D2A5');" style="curosr: hand;">&nbsp;</td></tr>
  19. </body>
  20. </html>


Pozostaje już tylko plik zapisujacy dane do bazy. zapisz_kolor.php:
  1. <?
  2. $dbhost = 'localhost';
  3. $dblogin = root;
  4. $dbhaslo = '';
  5. $db = test;
  6.  
  7. mysql_connect ("$dbhost","$dblogin","$dbhaslo") or die ("Nie masz uprawnien");
  8. mysql_select_db ("$db");
  9.  
  10. $kolor = mysql_escape_string($_POST['kolor']);
  11. $rekord = (int)$_POST['id'];
  12. $query = "SELECT * FROM kolory WHERE ID_rekord=$rekord LIMIT 1;";
  13. $result = mysql_query($query);
  14.  
  15.  
  16.     $query = "UPDATE kolory SET Kolor='$kolor' WHERE ID_rekord=$rekord;";
  17. }
  18. else{
  19.     $query = "INSERT INTO kolory (Kolor, ID_rekord) VALUES ('$kolor',$rekord);";
  20. }
  21. $result = mysql_query($query);
  22.  
  23. ?>
Jestem pewnien, że dla Was to pestka smile.gif

Gotowy i działający przykład można zobaczyć tutaj.

Powodzenia smile.gif
bigZbig
@TomASS -> ciekawy przyklad - lubie zabawy z kolorami - tylko, co Ty zrobiles, ze sie Twoj post tak rozjechal?
nospor
Z racji faktu, iż powstał artykuł na podstawie topicu, topic zostaje przeniesiony na właściwe forum.
Dodatkowo, zaraz utworzę topic na XML, AJAX , w którym będą zbierane linki do artykułów, by mieć wszystko pod ręką
marcz
Witam!

Muszę przyznać, iż idea AJAXu bardzo mnie zainteresowała. W ogóle postanowiłem nie stać w miejscu, a zrobić krok do przodu i mała przesiadkę technologii. Czas odejść od schematu prosty HTML (tabelki) + prosty JS (używany właściwie symbolicznie) + PHP4 + MySQL.
Postanowiłem zacząć porządnie się edukować w celu wykorzystania technologii XHTML + AJAX + PHP5 (+ MySQL oczywiście). Mam jednakże kilka pytań bardziej ideologicznych niż technicznych (te pewnie będą później winksmiley.jpg). A mianowicie:

2. Troszeczkę nie rozumiem idei przedstawionej w przykładzie "php Solutions - Przykład 2. - Stronicowanie danych". O ile dobrze wywnioskowałem, to jest wysyłane zapytanie o odpowiednie dane, następnie są one pobierane z bazy i formowane w ładny i zgrabny XML, przesyłane na stronę i prezentowane w postaci tabelki. Dlaczego więc na poziomie pobierania danych z bazy nie upakować ich od razu w tabelkę, przesłać na stronę wyświetlić? Dlaczego stosujemy fazę pośrednią w postaci XMLa?

Z góry dziękuję za wytłumaczenie mi tych kwestii, będę wdzięczny smile.gif.

Wycialem elementy nie majace nic wspolnego z tematem - NuLL
TomASS
Cześć smile.gif

ad 2 skor pyt 1 zostało wycięte winksmiley.jpg

Załóżmy, że chcesz wykorzsytać plik generujący XML nie tylko do wstawiania danych do tabelek, ale ten sam plik chcesz wykorzystac gdzieś indziej - po co robić dwa razy tan sam plik tylko z różnym sposobem wyświetlania plików? smile.gif
Jeśli chciałbyś zmienić wygląd tabelki to po co ingerować w sposób przesyłu tych danych?
XML jest jednym ze standardów do konwersji i przesyłania danych (tak chyba to można w skrócie napisać). Zarówno php jak i JavaScript posiadają mechanizmy do 'obróbki' takich danych.


Powodzenia i wytrwania w postanowieniach smile.gif
marcz
dzięki za odpowiedź smile.gif
kukix
Witam. Tak ostatnio próbowałem udoskonalić mój skrypt z ajax'em...

mam taki kawałek kodu:

  1. <?php
  2. function getRecordsOdp(id_ankieta) {
  3. if(id_ankieta==null)id_ankieta="0"; 
  4.  
  5. advAJAX.get({
  6. url : "plik.php",
  7. parameters : {
  8. "id_ankieta" : ""+id_ankieta+"",
  9. "var2" : "value2"
  10.  },
  11.  
  12. .......
  13. }
  14. ?>


no i nie wiem, czy znalazłem jakiś błąd, czy coś źle robie... ale jak zamiast lini ("id_ankieta" : ""+id_ankieta+"",) dam ( "id_ankieta" : id_ankieta,) to skrypt wywala błąd i wszystko staje...

pozatym w przykładzie Anakina z listą wyników w pliku 2.js jest kod:
  1. <?php
  2. function getRecords() {
  3.  
  4. advAJAX.get({
  5. url : "2.php?p="+currentPage+"&s="+currentSort+"%20"+currentSortOrder,
  6.  
  7. ....
  8. ?>


czy te paramtery nie powinny być poprawnie podane w części "parameters : {"... tutaj też nie pojedzie: (p : currentPage,) tylko (p : ""+currentPage+"",) ...
TomASS
1. pytanie:
ja to robię tak:
  1. <?php
  2. advAJAX.get({
  3. url : "plik.php",
  4. parameters : {
  5. id_ankieta: id_ankieta,
  6. var2: value2
  7.  },
  8.  
  9. .......
  10. }
  11. ?>

2. pytanie - tak wg. mnie powinno to być w opcji patamteteres, w którymś ze swoich przykładów też tak mam (czyli paramtery w linijce url), ale już nie będę poprawiać aby nie zrobić bałaganu.
yaotzin
Powiem szczerze ten artykuł tak naprawdę zaciemnia sprawę AJAX'a niż ją rozjaśnia ja się właśnie uczę programowania z wykorzystaniem tej technologii (zgodnie z tym co wyżej napisane jest to JS rozszerzony o parę możliwości). Co AJAX potrafi, ano wiele potrafii biggrin.gif. Może zacznę od tego, że gdy zaczynałem przygodę z WWW uważałem aplikacje internetowe za zwykłe ścierwo i nic interesującego, sprawa zmieniła się gdy spotkałem się z AJAX'em. Dla mnie rewela, programista aplikacji okienkowych pod Linuxa i pod Windows programujący w JAVA i C++ czuje się jak w domu. Oczywiście AJAX nie zapewnia takich samych możliwosci jak język C++. Chodzi oto iż technologia AJAX pozwala na zrealizowanie takiej aplikacji w pełni pod przeglądarkę, która będzie działać podobnie jak ta windowsowa "zwykła" aplikacja. AJAX zapewnia Drag'n'Drop (przeciągnij i upuść) co pozwala tworzyć bardziej intujcyjne apliakcje, pozwala na tworzenie aplikacji wielowątkowych... Można by powiedzieć że AJAX to rozwiązanie wielu problemów związanych z aplikacjami internetowymi. Oczywiście AJAX ma i swoje wady i zalety. Źle użyty raczej skomplikuje działanie strony... AJAX ze względu na swoje działanie stwarza problem z przyciskiem wstecz w przeglądarce, gdyż raz dokonana zmiana na stronie nie zostanie naprawiona poprzez kliknięcie wstecz. Więc programista w przypadku AJAX'a musi dodatkowo obsłużyć błędy z tym związane... pokazywanie artykułu o AJAX'ie który ma rozświetlić do czego służy AJAX i oprzeć go na klasach mija się z celem...

  1. <?php
  2. advAJAX.get({
  3. url : "plik.php",
  4. parameters : {
  5. id_ankieta: id_ankieta,
  6. var2: value2
  7.  },
  8.  
  9. .......
  10. }
  11. ?>


Bo nie wiem czy to powyższe wywołanie wygląda prościej niż to questionmark.gif

  1. xmlHttp.open("GET", "plik.php?name=" + id,true);


Z drugiej strony to jest forum php to może dlatego większość osób woli ten pierwszy zapis :roll2: Jeśli kogoś uraziłem przepraszam.... Ale mamy wolność słowa to sądzę że nikt się nie obraził tongue.gif

P.S. Sorki za ten HTML ale nie wiedziałem jak dodać kod z JS biggrin.gif
mariuszn3
Cytat(yaotzin @ 14.02.2007, 01:52:47 ) *
język AJAX

...?!? Najbardziej to Ty żeś tę sprawę zaciemnił. Ajax nie jest żadnym językiem.
yaotzin
Cytat(mariuszn3 @ 14.02.2007, 02:10:10 ) *
...?!? Najbardziej to Ty żeś tę sprawę zaciemnił. Ajax nie jest żadnym językiem.


No tak AJAX to technologia służąca tworzeniu interaktywnych aplikacji internetowych łącząca w sobie zalety JS i XML :]
TomASS
Dzięki za uwagi! smile.gif

Cytat
Bo nie wiem czy to powyższe wywołanie wygląda prościej niż to questionmark.gif

Może prościej - co nie znaczy lepiej smile.gif
  1. <?php
  2. advAJAX.get({
  3. url : "plik.php",
  4. parameters : {
  5. id_ankieta: id_ankieta,
  6. var2: value2
  7. },
  8.  
  9. .......
  10. }
  11. ?>

jest bezpieczniejszy - przy pomocy takiego zapisu klasa advAJAX filtruje dane (tutaj zmienne id_ankieta) coś ala mysql_escape_strings z php.
Cytat
AJAX ze względu na swoje działanie stwarza problem z przyciskiem wstecz w przeglądarce, gdyż raz dokonana zmiana na stronie nie zostanie naprawiona poprzez kliknięcie wstecz. Więc programista w przypadku AJAX'a musi dodatkowo obsłużyć błędy z tym związane

Klasa advAJAX, o ile się nie mylę posiada mechanizm przeciwdziałający temu problemowi.
yaotzin
Cytat(TomASS @ 23.02.2007, 13:40:31 ) *
Dzięki za uwagi! smile.gif
Może prościej - co nie znaczy lepiej smile.gif
  1. <?php
  2. advAJAX.get({
  3. url : "plik.php",
  4. parameters : {
  5. id_ankieta: id_ankieta,
  6. var2: value2
  7. },
  8.  
  9. .......
  10. }
  11. ?>

jest bezpieczniejszy - przy pomocy takiego zapisu klasa advAJAX filtruje dane (tutaj zmienne id_ankieta) coś ala mysql_escape_strings z php.

Klasa advAJAX, o ile się nie mylę posiada mechanizm przeciwdziałający temu problemowi.


Nie będę się spierał w końcu dopiero się uczę. PZDR

Ale masz rację i tu się zgodzę, jest bezpieczniejszy....
E -dd
Cytat
No tak AJAX to technologia

AJAX to też nie technologia smile.gif Przeczytaj opis na tej stronie to zobaczysz co to jest smile.gif
yaotzin
Cytat(E -dd @ 2.03.2007, 15:47:44 ) *
AJAX to też nie technologia smile.gif Przeczytaj opis na tej stronie to zobaczysz co to jest smile.gif


Cytat
AJAX = Asynchronous JavaScript and XML

AJAX is not a new programming language, but a technique for creating better, faster, and more interactive web applications.

With AJAX, your JavaScript can communicate directly with the server, using the JavaScript XMLHttpRequest object. With this object, your JavaScript can trade data with a web server, without reloading the page.

AJAX uses asynchronous data transfer (HTTP requests) between the browser and the web server, allowing web pages to request small bits of information from the server instead of whole pages.

The AJAX technique makes Internet applications smaller, faster and more user-friendly.

AJAX is a browser technology independent of web server software.


żródło: http://www.w3schools.com/ajax/ajax_intro.asp

I zamykam temat czy to jest technologia czy nie... czy to jest może jakiś model... wypowiedziałem sie na temat artykułu a nie informacji w Wikipedii...

Ale cieszę się że wszyscy uczą sie używać www.google.pl pierwsza z góry pozycja to informacja w Wikipedii o AJAX. ja podeślę jeszcze kilka:

http://es.wikipedia.org/wiki/AJAX
http://en.wikipedia.org/wiki/Ajax_(programming)
http://ru.wikipedia.org/wiki/AJAX
http://nl.wikipedia.org/wiki/Asynchronous_JavaScript_and_XML
http://www.masternewmedia.org/interface_de...ax_20050728.htm
http://www.icesoft.com/products/icefaces.html


Dodam jeszcze kilka źródeł:

"AJAX i PHP"
"Ajax w akcji"
"Ajax. Zaawansowane programowanie"
wydawnictwa Helion
PZDR....
slawek_master
jak dla mnie to artykul napisany malo zrozumiale, gdybym nie przeczytal w nastronach developer.mozilla o ajax to bym praktycznie nic nie zrozumial o co chodzi z XMLHttpRequest()
Xafaso
Jakie zdziwienie wszystkich ogarnęło... Jakby AJAX powstał wczoraj...

Dobry artykuł. Na pewno się przyda, nie którym osobą. Z tego co mi wiadomo to naprawdę bardzo mało osób zna ten język. Bardziej jest popularny JS, ale moim skromnym zdaniem lepszy jest AJAX.
erix
Zanim coś powiesz, zastanów się 3 razy...
Cytat
Bardziej jest popularny JS, ale moim skromnym zdaniem lepszy jest AJAX.

AJAX nie jest napędzany przez JS? :|

Nie nabijaj postów stwierdzeniami nijak mającymi się do rzeczywistości.
Crozin
Cytat
AJAX nie jest napędzany przez JS? :|
AJAX nie jest napędzany przez JS. AJAX to najzwyklejszy na świecie JS - i nic więcej.

Stwierdzenie, że AJAX to coś innego niż JS to jakby stwierdzić, że przykładowo biblioteka curl to co innego niż PHP. winksmiley.jpg
erix
Cytat
AJAX to najzwyklejszy na świecie JS

No jak nie jest? biggrin.gif Jeśli chodzi o np. IE, to tam już nie jest sam JS, a kontrolka ActiveX, która musi być przez coś obsługiwana.

Cytat
że przykładowo biblioteka curl to co innego niż PHP.

Owszem, coś innego.
Crozin
Cytat
Owszem, coś innego.
Chodziło mi o to, że przykładowy CURL to poprostu "fragment" języka, podobnie jak zestaw funkcji z rodziny strings czy array. Mając plik .php, w którym są wykorzystywane elementy tej biblioteki nadal mówi się jednak "skrypt php", nie "skrypt curla". W przypadku JS i AJAX jest tak samo.
Cytat
Jeśli chodzi o np. IE, to tam już nie jest sam JS, a kontrolka ActiveX
No tak. W IE... w IE to się wiele różnych rzeczy dzieje tongue.gif


Chodzi o fakt, że nazwanie AJAXa innym językiem niż JS (czy też technologią) jest poprostu błędem.
erix
A to to się zgodzę. winksmiley.jpg

Swoją drogą - ad. tematu - to z AJAX robi się ostatnio technologię od wszystkiego - DHTML = AJAX, zmiana przez JS = AJAX... Wśród tzw. szarych owieczek JS = AJAX...
Xafaso
No dobrze mogę się zgodzić, ale jednak AJAX się trochę różni. Może źle się wyraziłem.
Crozin
Czym się różni?
nexis
Cytat(Crozin @ 22.12.2008, 12:26:14 ) *
AJAX nie jest napędzany przez JS. AJAX to najzwyklejszy na świecie JS - i nic więcej.

I tutaj się niestety mylisz, ponieważ AJAX najczęściej jest obsługiwany za pomocą JavaScript, ale może to być dowolny inny język skryptowy np. Visual Basic (VBScript) albo JScript. Kluczowym elementem AJAX zdaje się być obiekt XMLHttpRequest.
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.