![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 510 Pomógł: 1 Dołączył: 27.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
witam
bardzo proszę o pomoc w moim problemie, poniewaz czas mnie strasznie goni. nie moge znalezc w jaki sposob zrobic, aby dane byly ciagle pobieranie w tle i wyswietlane za pomoca ajaxa. mam kod w ktorym wysylane sa dane POST do pliku php a on juz dodaje do bazy. problem w tym, ze nie wiem jak zrobic, aby dane byly caly czas na bierzaco wyswietlane u gory... cos ala okienko gg... na dole sie dodaje, a u góry powinno sie wyswietlac... dziekuje i pozdrawiam obecnie mam taki kod AJAX: Kod <script language="javascript"> var XMLHttpRequestObject = false; if (window.XMLHttpRequest) { XMLHttpRequestObject = new XMLHttpRequest(); } else if (window.ActiveXObject){ XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); } function getData(dataSource, divID, data) { if(XMLHttpRequestObject){ var obj = document.getElementById(divID); XMLHttpRequestObject.open("POST", dataSource); XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); XMLHttpRequestObject.onreadystatechange = function() { if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { obj.innerHTML = XMLHttpRequestObject.responseText; } } XMLHttpRequestObject.send("data=" + data); } } </script> <form> <input type="button" value="Pobierz wiadomość 1" onclick="getData('data.php', 'targetDiv', 1)"> <input type="button" value="Pobierz wiadomość 2" onclick="getData('data.php', 'targetDiv', 2)"> </form> <Div id="targetDiv"> <p>Pobrana wiadomość pokaże się tutaj.</p> </div> plik data.php Kod <?
if ($_POST["data"] == "1"){ $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = ''; $dbname = 'bazabaza'; $dbc = @mysql_connect($dbhost, $dbuser, $dbpass) or die ('Nie moge połaczyc sie z Mysql'); mysql_select_db ($dbname) or die ('Nie moge wybrać bazy'); mysql_query("SET NAMES utf8"); $wynik = mysql_query("select id from baza where nazwa='cos'"); $zmienne = mysql_fetch_array($wynik, MYSQL_ASSOC); echo $zmienne['id']; } if ($_POST["data"] == "2"){ echo "wartość 2"; } ?> Ten post edytował kkuubbaa88 5.06.2009, 21:24:03 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 121 Pomógł: 26 Dołączył: 2.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
W PHPie zrób sobie plik np. zwrocDane.php. W jaki sposób zwracać? To zależy, co chcesz zwrócić - jeśli tylko jakiś napis czy liczbę to zwykłe echo wystarczy. Jeśli bardziej skomplikowane dane, to polecam JSON. Poczytaj w manualu PHP i w sieci.
W JS piszesz sobie funkcję refreshData(). Wewnątrz niej masz żądanie AJAXa (podobnie jak w kodzie który wkleiłeś) do pliku zwrocDane.php. Z tymi danymi możesz sobie potem zrobić co chcesz - wstawić do jakiegoś pola, wyrzucić alertem, jak Ci wygodnie. Aby pobieranie danych odbywało się co określony czas, to skorzystaj w JS z setInterval. PS. Polecam zastosowanie jakiejś zewnętrznej biblioteki do obsługi AJAXa - np advAJAX. Ten post edytował singles 6.06.2009, 12:26:08 -------------------- Works for me => u mnie działa - blog o (o)programowaniu i nie tylko
meet.php - darmowe meetupy związane z PHP |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 11:39 |