Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ajax] i mysql
Forum PHP.pl > Forum > XML, AJAX > AJAX
thoran
Witam, czytałem troszke o ajaxie, widziałem jak działa ale nadal nie rozumiem pewnej rzeczy, załózmy ze mam stronę która przy kazdym przełdowaniu łączy się z bazą danych pobiera wartosci itd. Jak to jest przy ajaxie, przeciez on nie przeładowuje strony wiec skąd wie ze połączenie z baza zostało ustanowione? Moze to dlatego ze późno jest ale nie moge tego skumać winksmiley.jpg moze mi ktoś schemat działania ajaxa z uzyciem bazy danych i php wyjasnić w kilku słowach lub podać link do tutoriala od podstaw? Pzdr
TomASS
Chyba coś kiedyś napisałem o AJAXie na forum.....
pawel_k
http://advajax.anakin.us/index-pl.htm - na dole masz przykład stronicowania danych, tam jest to o co pytasz...

ja osobiście popełniłem podobną rzecz, link do strony: http://ie.ae.krakow.pl/~kocot3p/lista.html, pliki JS: http://ie.ae.krakow.pl/~kocot3p/include/dir.js, kod generujący xml:
  1. <?php
  2. header('Content-Type: text/xml');
  3. $strKatalog = !empty($_GET['katalog']) ? $_GET['katalog'] : 'baza';
  4. require_once('../smarty/conf.php');
  5. $resConnId = @pg_connect('host=localhost dbname='.$strUser.' user='.$strDbName.' password='.$strDBPASS);
  6. $resCheck = @pg_query($resConnId, 'select id, parent from dir where nazwa = ''.$strKatalog.'' order by id');
  7. $intCheck = @pg_num_rows($resCheck);
  8. $resOdwiedzin = @pg_query($resConnId, 'select count(id) from stats');
  9. $arrOdwiedzin = @pg_fetch_row($resOdwiedzin);
  10.  
  11. if(!$resConnId || $intCheck != 1)
  12. {
  13. echo '<?xml version="1.0" ?>';
  14. echo '<records katalogow="0" plikow="0" odwiedzin="0">';
  15. echo '</records>';
  16. }
  17. else
  18. {
  19. $intOdwiedzin = $arrOdwiedzin[0];
  20. $arrKatalog = pg_fetch_assoc($resCheck);
  21. $resLiczbaKat = pg_query($resConnId, 'select id,nazwa from dir where parent = '.$arrKatalog['id'].' order by id');
  22. $resLiczbaPlikow = pg_query($resConnId, 'select nazwa,kod,size,data,czas,opis from pliki where katalog = '.$arrKatalog['id'].' order by id');
  23. echo '<?xml version="1.0" ?>';
  24. echo '<records katalogow="'.($intLiczbaKat = pg_num_rows($resLiczbaKat) + ($strKatalog == 'baza'0 : 1)).'" plikow="'.($intLiczbaPlikow = pg_num_rows($resLiczbaPlikow)).'" odwiedzin="'.$intOdwiedzin.'">';
  25. echo '<katalog>';
  26. $resParentName = pg_query($resConnId, 'select nazwa from dir where id = '.$arrKatalog['parent']);
  27. $arrParentName = pg_fetch_assoc($resParentName);
  28. echo '<link>'.$arrParentName['nazwa'].'</link>';
  29. echo '</katalog>';
  30. while($arrKat = pg_fetch_assoc($resLiczbaKat))
  31. {
  32. if(!($strKatalog == 'baza' && $arrKat['nazwa'] == 'baza'))
  33. {
  34. echo '<katalog>';
  35. echo '<link>'.$arrKat['nazwa'].'</link>';
  36. echo '</katalog>';
  37. }
  38. }
  39. while($arrPlik = pg_fetch_assoc($resLiczbaPlikow))
  40. {
  41. $arrRozsz = explode('.',$arrPlik['nazwa']);
  42. echo '<plik ';
  43. echo 'nazwa="'.$arrPlik['nazwa'].'" ';
  44. echo 'wielkosc="'.$arrPlik['size'].'" ';
  45. echo 'data="'.$arrPlik['data'].'" ';
  46. echo 'opis="'.$arrPlik['opis'].'" ';
  47. echo 'kod="'.$arrPlik['kod'].'" ';
  48. echo 'ikonka="http://ie.ae.krakow.pl/~kocot3p/include/ikonki/'.((sizeof($arrRozsz) == 2) ? $arrRozsz[1] : 'unknown').'.png" ';
  49. echo '/>';
  50. }
  51. echo '</records>';
  52. }
thoran
Hm czyli do stron dynamicznie generujących zawartosc nie ma co uzywac ajaxa, wiekszosc przykładów które widziałem pokazywały statyczne stronki w html lub tak jak twój przykład z pewnymi udziwnieniamy typu php, db ale co np gdy mam stronę złozoną z 3 częsci lewa, prawa, srodek i nie chcę non stop odswiezać lewaj i prawej tylko samą treść, z kolei wszystkie elementy są pobierane z bazy danych do kazdej z części strony.
pawel_k
przeanalizuj dokładnie kod mój czy z advAjaxa, nie ma tam pobierania całej strony, pobierana jest tylko treść która cię interesuje...
thoran
Cytat(pawel_k @ 2006-02-20 09:05:31)
przeanalizuj dokładnie kod mój czy z advAjaxa, nie ma tam pobierania całej strony, pobierana jest tylko treść która cię interesuje...

Sam kod rozumiem jednak jak on działa w całym układzie strony niebardzo.
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.