Estou fazendo uma Consulta no Banco MYSQL e retornando o resultado dentro de uma div
$sql=mysql_query("SELECT * FROM tabela WHERE MONTH(aniversario) = MONTH(NOW()) ORDER BY RAND() ASC")
$vetor=mysql_fetch_array($sql);
echo'<div><img src="'.$vetor['foto'].'" border="0"><br>$vetor['nome']';
Eu gostaria de um jeito de refazer esta mesma consulta a cada 10 segundos e retornar o novo resultado sem dar refresh na pagina.
É bem provável que alguém vai dizer:
Faça isso usando AJAX!
Encontrei um exemplo na web que faz o que estou precisando mas não manjo de AJAX e o script era parte de um sistema de cadastro...
tá funcionando direitinho mas não sei se tem codigo sobrando ...
Se alguém puder da uma verificada agradeço
index.php
<script>
setInterval("messages()", 5000);
function messages(){
var body = "";
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert("Seu navegador não suporta XMLHttpRequest.");
return;
}
xmlhttp.open("POST", "pagina.php", true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
xmlhttp.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
xmlhttp.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
xmlhttp.setRequestHeader("Pragma", "no-cache");
xmlhttp.onreadystatechange = processReqChange;
xmlhttp.send(null);
}
function processReqChange() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
document.getElementById("texto").innerHTML = xmlhttp.responseText;
document.getElementById("mensagem").value = document.getElementById("mensagem").value;
} else {
alert("Problemas ao carregar o arquivo.");
}
}
}
//-->
</script>
<div id="texto">
<?php
include('conecta.php');
$sql=mysql_query("SELECT * FROM tabela WHERE MONTH(aniversario) = MONTH(NOW()) ORDER BY RAND() ASC")
$vetor=mysql_fetch_array($sql);
echo'<img src="'.$vetor['foto'].'" border="0">';
echo $vetor['nome'];
?>
</div>
pagina.php
<?php
include('conecta.php');
$sql=mysql_query("SELECT * FROM tabela WHERE MONTH(aniversario) = MONTH(NOW()) ORDER BY RAND() ASC")
$vetor=mysql_fetch_array($sql);
echo'<img src="'.$vetor['foto'].'" border="0">';
echo $vetor['nome'];
?>
Tive que repetir a consulta dentro da div texto porque ela iniciava em branco.
Ta funcionando mas se aguem puder ta uma olhada se o scritp ta certo agradeço. :lol:
E aproveitando eu gostaria de saber se tem jeito de fazer com que o nome e a foto do usuario aparecer devagar como se estivesse surgindo ... eu nem sei como devo pesquisar pra fazer isso? :blush:
Pergunta
misterviralata
Ola Amigos!
Estou fazendo uma Consulta no Banco MYSQL e retornando o resultado dentro de uma div
Eu gostaria de um jeito de refazer esta mesma consulta a cada 10 segundos e retornar o novo resultado sem dar refresh na pagina. É bem provável que alguém vai dizer: Faça isso usando AJAX! Encontrei um exemplo na web que faz o que estou precisando mas não manjo de AJAX e o script era parte de um sistema de cadastro... tá funcionando direitinho mas não sei se tem codigo sobrando ... Se alguém puder da uma verificada agradeço index.php pagina.phpTive que repetir a consulta dentro da div texto porque ela iniciava em branco.
Ta funcionando mas se aguem puder ta uma olhada se o scritp ta certo agradeço. :lol:
E aproveitando eu gostaria de saber se tem jeito de fazer com que o nome e a foto do usuario aparecer devagar como se estivesse surgindo ... eu nem sei como devo pesquisar pra fazer isso? :blush:
Obrigado!
Editado por misterviralataLink para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.