#php #mysql #ajax
#php #mysql #ajax
Вопрос:
Я новичок в ajax. Я попытался найти решение, но потерпел неудачу. Я хочу обновлять запрос MySQL каждую секунду, но как? Я понятия не имею, как это сделать, поэтому, пожалуйста, помогите мне.
код
$sql="SELECT * FROM `user`";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) {
echo $row['fname'];
echo $row['email'];
}
Комментарии:
1. В javascriot вы можете использовать
var timer=setInterval(functionName,1000)
для вызова PHP-скрипта с помощью Ajax. Я не могу сказать больше, вы не даете много деталей для работы. Еще одно более жестокое решение: установите тег meta refresh в HTML.2. @Khushboo Я знаю, что он может работать с ajax, но я понятия не имею о кодировании ajax.
3. У меня есть добавить пример в ответ
Ответ №1:
Попробуйте ниже
<div class="result"></div>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
function refresh_div() {
jQuery.ajax({
url:'YOUR PHP page url',
type:'POST',
success:function(results) {
jQuery(".result").html(results);
}
});
}
t = setInterval(refresh_div,1000);
</script>
Комментарии:
1. Примерно так же просто, как и получается, но я бы добавил a
<div class="result"></div>
к вашему ответу, чтобы OP знал, как разместить его где-нибудь на странице.2. о .. конечно. Я добавляю, что
3. Что вы пробовали? Пожалуйста, вставьте свой код в свой вопрос
4. @Khushboo Я вставил свой php-код
<div class="result"></div>
и добавил вашу функцию, но она не работает..5. @AyazShah У вас есть встроенная библиотека jQuery на вашей странице?
Ответ №2:
Вы можете использовать jQuery с $.ajax()
для получения данных, setInterval()
вызова функции каждые x секунд и $.html()
вставки ваших данных в элемент.
Вот пример :
setInterval(function(){ getUsers(); }, 1000);
function getUsers()
{
$.ajax({
url: 'myphppage.php',
type: 'post',
success: function(data) {
$('.htmlelement').html(data);
}
});
}
<div class="htmlelement">data will appear here</div>
.htmlelement
это HTML-элемент (например, div с классом «htmlelement»), куда будут вставлены ваши результаты.
Ответ №3:
Жестокое решение: установите тег meta refresh в HTML:
<meta http-equiv="refresh" content="1">
Комментарии:
1. Это обновляет всю страницу, а не только один запрос MySQL. Не очень хорошо и определенно не отвечает на вопрос должным образом.