![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 17.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
rozpocząłem swoją zabawę z ajax'em dość niedawno i jak to bywa na samym początku - miewa się różne problemy. Mój problem polega na tym, iż pewna operacja PHP wykonuje się w divie o nazwie poll. Ta "operacja" będzie wkrótce systemem oceniania, ale do rzeczy: kod HTML: Plik poll.js:
Cały mój problem polega na tym, iż kiedy zagłosuję na TAK w pierwszym czy w drugim divie - operacja wykonuje się tylko w tym pierwszym. Chciałbym, aby skrypt wykonywał się w tym divie, w którym zagłosowałem na tak albo nie. Wiem, że rozwiązaniem mojego problemu jest ta linijka: ; tylko nie za bardzo wiem jak temu zaradzić, aby operacja wykonywała się w tym "pojemniku", w którym uprzednio zagłosowałem. Bardzo proszę o pomoc. Z góry dziękuję. Ten post edytował cafepl_com 4.10.2008, 19:31:15 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Kod var xmlHttp function getVote(page, id, rate, name) { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } var url='poll_vote.php?page='+escape(page)+'&id='+escape(id)+'&rate='+escape(rate)+'' xmlHttp.onreadystatechange=stateChanged(name) xmlHttp.open("GET",url,true) xmlHttp.send(null) } function stateChanged(idDiv) { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById(idDiv). innerHTML=xmlHttp.responseText; } } function GetXmlHttpObject() { var objXMLHttp=null if (window.XMLHttpRequest) { objXMLHttp=new XMLHttpRequest() } else if (window.ActiveXObject) { objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP") } return objXMLHttp } teoretycznie powinno zadziałać ;] -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 17.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Tak właśnie chciałem to rozwiązać, żeby każdy div miał inny id (pobierałbym te id z bazy). Szkoda tylko, że nie działa ten kod... gdzieś tu jest błąd.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
hm wkleiłem to do siebie wrzuciłem w funkcji "stateChanged" innertHTML poza warunek i działa bez problemu :/
może pokaż jak pobierasz te id z bazy ? i jak je wpisujesz do tej funkcji ? -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 17.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
http://dodawane.topworld.org/ocena.html Pod tym adresem umieściłem ten system (bez bazy póki co). No i niestety nie działa. Nie wiem od czego to zależy, że u Ciebie OK a u mnie niestety nie.
Ten post edytował cafepl_com 4.10.2008, 21:31:48 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 1 Dołączył: 2.10.2008 Skąd: wertykalne Ostrzeżenie: (0%) ![]() ![]() |
Cały mój problem polega na tym, iż kiedy zagłosuję na TAK w pierwszym czy w drugim divie - operacja wykonuje się tylko w tym pierwszym. Chciałbym, aby skrypt wykonywał się w tym divie, w którym zagłosowałem na tak albo nie. Wiem, że rozwiązaniem mojego problemu jest ta linijka: ; tylko nie za bardzo wiem jak temu zaradzić, aby operacja wykonywała się w tym "pojemniku", w którym uprzednio zagłosowałem. Bardzo proszę o pomoc. Z góry dziękuję. Nie powinieneś mieć sytuacji gdy dwa elementy mają takie samo id. Jeśli dopiero zaczynasz pracę z ajaxem polecam Ci przyjrzeć się jQuery. Twój problem rozwiążesz raz dwa, po pierwszym tutorialu z podstaw jQuery. Kod który napisałeś będzie o wiele krótszy i przejrzysty. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
a daj zamiast :
Kod <script src="poll.js"></script> tak: Kod <script type="text/javascript" src="poll.js"></script>
-------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 17.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Niestety dalej nic. Plik PHP poll_vote.php wygląda dla informacji następująco:
----------------------------------------------------------- Rozwiązałem mój problem w następujący sposób:
Dziękuję za pomoc. Być może jak dokończę mój pierwszy system oceniania przy pomocy ajax to pochwalę się nim na forum (nie obiecuję). Pozdrawiam. Ten post edytował cafepl_com 5.10.2008, 09:54:20 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 17:06 |