Hej.
Jak zrobić, by na stornie zmieniał się content po zmianie zawartości pliku txt bez odświeżania strony
window.onload = function () { if ($('#JavaScript').hasClass('JavaScript_off')) { $('#JavaScript').removeClass("JavaScript_off"); $('#JavaScript').addClass("JavaScript"); }; $.post('/php_function/set_session_variable.php', { ajax_test: 'javascript' }); console.log('OK'); $.ajax({ url: "/test.txt", dataType: 'json', success: function(data) { $( '#testowanie' ).html(data[1]); }, error: function() { alert("error"); } }); };
var previous = ""; setInterval(function() { var ajax = new XMLHttpRequest(); ajax.onreadystatechange = function() { if (ajax.readyState == 4) { if (ajax.responseText != previous) { alert("file changed!"); previous = ajax.responseText; } } }; ajax.open("POST", "/test.txt", true); ajax.send(); }, 1000);
setInterval(function() { var previous = ""; var ajax = new XMLHttpRequest(); ajax.onreadystatechange = function() { if (ajax.readyState == 4) { if (ajax.responseText != previous) { var data = JSON.parse(ajax.responseText); var id = $(this); $( '#testowanie' ).html(data[1]); previous = ajax.responseText; } } }; ajax.open("post", "/test.txt", true); ajax.send(); }, 1000);
https://stackoverflow.com/a/44036573/5673289
Musisz skompletować tablicę tych identyfikatorów i wykorzystać parametr value tej funkcji anonimowej
Zrobiłem tak
setInterval(function() { var data = mysql_query("test"); for (var i = 0; i < data.length; i++ ) { console.log(data[i]['dvr_mac_address']); var previous = ""; var ajax = new XMLHttpRequest(); ajax.onreadystatechange = function() { if (ajax.readyState == 4) { if (ajax.responseText != previous) { var data_new = JSON.parse(ajax.responseText); $( '#' + data[i]['dvr_mac_address'] ).html(data_new); previous = ajax.responseText; } } }; ajax.open("post", "/" + data[i]['dvr_mac_address'], true); ajax.send(); } }, 1000); function mysql_query(query, args = null) { var json = null; $.ajax({ type: "POST", async: false, url: "/php_function/set_session_variable.php", data: {ajax_test: 'dvr_status', query: query, args: args}, success: function(response){ json = JSON.parse(response); } }); return json; }
if ($_POST['ajax_test'] == 'dvr_status') { $query = $_POST['query']; $args = $_POST['args']; $real_query = null; if( $query == "test" ) { $real_query = $dvr->get_active_dvr(); } if ($real_query != null ) { http://www.php.net/echo json_encode($real_query); } }
public function get_active_dvr() { $result = $this->sql->query("SELECT dvr_mac_address FROM dvr WHERE dvr_active_status = 1"); $results = []; while($data = $result->fetch_assoc()) { http://www.php.net/array_push($results, $data); } return $results; }
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)