Ir para conteúdo
Fórum Script Brasil
  • 0

AUTO MODAL + RESPOSTA COM UPDATE


Enigma_avatar

Pergunta

ola pessoal, estou com um projeto onde tenho uma div de usuariosonline.php que atualiza de x em x segundos, gostaria de dispara uma janela modal automaticamente sempre o status no bd fosse mudado

EX: SELECT FROM useronline WHERE status=livre ( nesse momento abriria uma janela modal de confirmacao ) se o usuario clicar em sim altera o status para ocupado se clicar em não altera para livre novamente.

eu já tenho o codigo do modal e tambem tenho o codigo do php para alterar, o que estou apanhando é para fazer esse disparo automatico, desde já agradeco a ajuda

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Entendi, ainda utilize o setInterval(), mas troque a ordem dos acontecimentos na função que ele chama. Primeiro faça o GET para o servidor faça a verificação do resultado e se voltar uma atualização exiba o modal e se voltar um SIM do modal atualiza a DIV.

Editado por Markus Magnus
Link para o comentário
Compartilhar em outros sites

  • 0

então no caso esse get sera no proprio refresh dos users online certo:

<?
$result = mysql_query("SELECT * FROM usuarios WHERE status='pendente' AND ID='$id_user'");
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "<div id='usuariosonline'>

 <img src='avatares/$row[ID].png' align='left' /> $row[usuario] --- [$row[status]]<br>
  <a href='#janela1' rel='modal'> Duelo </a>

  
</div> ";
}
?>

e eu dipararia como ?

<script type="text/javascript">
setInterval( "clickRight()", 5000 );
function clickRight()
{
   $('#usuariosonline a').trigger('click'); 
};
</script>

porque assim ele fica so repetindo sempre o modal, como faria para que ele diparasse somente no id que tem o status pendente?

Link para o comentário
Compartilhar em outros sites

  • 0

Isso, assumindo que a página que o usuário está acessando se chama usuariosonline.php e a página que tem o script que seleciona no banco seja atualizausuariosonline.php o JavaScript ficaria mais ou menos assim:

<script type="text/javascript">
setInterval( "clickRight()", 5000 );
function clickRight()
{
	//GET para receber os novos dados
	$.get('atualizausuariosonline.php', function(data) {
		//Se atualizausuariosonline.php achar algum registro no banco
		if(data.length > 0) {
			//Ativa a Janela Modal
			$('#usuariosonline a').trigger('click');
		}
	//Diz para a função $.get que o que vai retornar é um HTML
	}, 'html');
};
</script>

Ai vem o segundo passo que eu acho mais complicado, já que nunca usei uma janela modal, das duas uma, ou você consegue fazer a abertura da janela se comportar como uma função, como um confirm(), onde o click do usuário faz com que a janela retorne um valor para o script acima e se caso voltar true, você pega o valor da variável data e escreve em #usuariosonline, ou você passa o valor de data para a janela modal, por exemplo colocando o valor em uma variável global, para que o script da janela faça essa última parte.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...