Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ajax] aktualizacja bazy w tle
szczypior
post
Post #1





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 5.02.2007

Ostrzeżenie: (0%)
-----


Witam.

Chciałbym zrobić (chyba dość prostą rzecz) z wykorzystaniem Ajaxu: wyświetlam liczby i przy każdej słowo (np: dodaj). Gdy kliknie się na słowo wartość odpowiadającej mu liczby zmienia się o 1 w bazie danych i na stronie bez jej przeładowywania.

Z tego co czytałem to można w tym przypadku użyć biblioteki advAJAXu.

Może zetknął się ktoś z Was z jakimś artykułem lub tuttorialem, który może mi pomóc w zrobieniu tego?
Albo jakaś podpowiedź jak się za to zabrać? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


advAjax czytasz sobie to tak na poczatek
a teraz moze moja podpowiedz

jezeli robisz sobie wyswietlanie liczb w tabeli to nadajesz dla kazdego wiersza unikalne id i potem w funkcji
podajesz to id i przy zdarzeniu
onSuccess robisz sobie mniej wiecej cos takiego

Kod
var oDiv = document.getElementById(id);
oDiv.innerHTML = obj.responseText;


to tak na poczatek jak bedziesz mial problem to pisz to cos poradzimy
Go to the top of the page
+Quote Post
szczypior
post
Post #3





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 5.02.2007

Ostrzeżenie: (0%)
-----


konkretnie to miałem na myśli coś takiego jak na wykop.pl

ja myślałem o zapisie
  1. advAJAX.post({
  2. url : "plik_aktualizujący_baze.php",
  3. parameters:{
  4.  wartosc: wartosc,
  5.  id: '<?echo $_GET['id'];?>'
  6. },
  7. onSuccess : function(obj) {
  8. }
  9. });


Można tak?
Go to the top of the page
+Quote Post
skowron-line
post
Post #4





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


no okej ale jak zrobisz tak jak napisales to bedziesz musial przeladowac strone poniewaz bedziesz musial zaladowac zmienna $_GET a tak jak wywolasz sobie funkcje JS
z linka powiedzmy
Kod
<a href="java script:funkcja('parametr');">dodaj</a>

wtedy wywola sie ajax
Go to the top of the page
+Quote Post
szczypior
post
Post #5





Grupa: Zarejestrowani
Postów: 98
Pomógł: 0
Dołączył: 5.02.2007

Ostrzeżenie: (0%)
-----


no fakt (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Przeładowanie konkretnej liczby mozna by zrobić przez :

Kod
opener.$(id)
tylko nie wiem jak dalej wskazać co ma być przeładowane. W znalezionym przykładnie widziałem ".style.background=kolor;" ale to odnosi się do tła tabeli.

takie wywołanie funkcji jest ok?
Kod
echo "<button onclick='powieksz(20,".$id.");'>Dodaj</button>";


funkcja powieksz() wyglądałaby mniej wiecej tak:
Kod
function powieksz(wartosc,id) {
    opener.$(id).tutaj wskazanie co ma byc przeladowane
    advAJAX.post({
            url : "zapisz.php",
            parameters: {
                wartosc: wartosc,
                id: id
            },
            onSuccess : function(obj) {
            }
   })
;}


bardzo źle ? (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.12.2025 - 14:04