Jump to content


Photo

Ler Mysql E Exbir Iframe !


  • Faça o login para participar
1 reply to this topic

#1 EvlrNN

EvlrNN

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Masculino
  • Localidade:Aracaju/SE

Posted 25/10/2007, 00:46

Sou mais um iniciante de AJAX malz ae! =/

Queria uma luz em relação ao que vou tentar explicar mais ou menos o que eu quero!

Tem um campo numa tabela no BD que o valor será 1 ou 0, queria que de 10 em 10 segundos a página fizesse a leitura desse campo sem dar refresh na página toda e quando esse valor for igual a um ele mostre um IFRAME ou um DIV ! =|

#2 apolo

apolo

    Php my life...

  • Usuários
  • 227 posts
  • Sexo:Masculino
  • Localidade:Rio das Ostras - RJ
  • Interesses:PHP e MYSQL

Posted 04/11/2007, 20:04

Bom,

eu estou usando um script muito bom.... que não estar dando conflito nem nada...

estou usando da seguinte maneira, tenho um cabecalho no meu painel de controle, onde ele coloca informação do logado, o tempo de logado, login, o nível do usuário, e mensagens..

essa área mensagens que eu uso o que você tá querendo para exibir mensagens novas e tal..

ai vai..

parte que faz isso da cab.php

<head>
<script src="js/ajax2.js" type="text/javascript" language="javascript"></script>
</head>
<table>
<tr>
<!-- os 15000 eh igual a 15 segundos -->
<td><script>setInterval(function(){ ajaxLoad('cab_mensagens.php','mensagens'); },15000);</script><img src="img/email.gif" alt='Mensagens' title='Mensagens'></td>
<!-- essa função tá aqui pelo motivo de quando entra na cab.php ele a executa, então após 15 segundos ele entra na cima, que são as mesmas, tem as mesmas finalidades -->
<td><div id="mensagens"><script>ajaxLoad('cab_mensagens.php','mensagens');</script></div></td>
</tr>
</table>


o arquivo ajax2.js que vc chama na cab.php

try{
xmlhttp = new XMLHttpRequest();
}catch(ee){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(E){
xmlhttp = false;
}
}
}

fila=[];
ifila=0;
function ajaxLoad(url, destino){
if(destino!=Object){ destino = document.getElementById(destino); }
if(destino.nodeName=="SELECT"){
while(destino.options.length>0)destino.options[0]=null;
destino.options[0]=new Option(" -- Aguarde -- "," -- Aguarde -- ");
} else {
destino.innerHTML="Carregando Conteúdo...";
}
fila[fila.length]=[url,destino];
if((ifila+1)==fila.length)ajaxRun();
}
function ajaxShow(valor,destino){
if(destino.nodeName=="SELECT"){
while(destino.options.length>0)destino.options[0]=null;
if(valor.charAt(0)=="[" && valor.charAt(valor.length-1)=="]"){
var destinoTmp=eval(valor);
for(var i=0;i<destinoTmp.length;i++){
destinoTmp[i][0]=unescape(destinoTmp[i][0]);
destinoTmp[i][1]=unescape(destinoTmp[i][1]);
destino.options[destino.options.length]=new Option(destinoTmp[i][1],destinoTmp[i][0]);
}
} else {
destino.options[destino.options.length]=new Option(valor,valor);
}
} else {
destino.innerHTML = unescape(valor.replace(/\+/g," "));
}
}
function ajaxRun(){
url = fila[ifila][0];
destino = fila[ifila][1];
xmlhttp.open("GET", url, true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=ISO-8859-1");
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=function() {
if (xmlhttp.readyState==4){
switch(xmlhttp.status){
case 200: { ajaxShow(xmlhttp.responseText,destino); break }
case 204: { ajaxShow("O servidor n&atilde;o respondeu ao chamado",destino); break }
case 400: { ajaxShow("Endere&ccedil;o inv&aacute;lido",destino); break }
case 403: { ajaxShow("Voc&ecirc; n&atilde;o possui permiss&atilde;o para acessar esse arquivo",destino); break }
case 404: { ajaxShow("Arquivo n&atilde;o encontrado",destino); break }
case 500: { ajaxShow("Erro interno do servidor...",destino); break }
case 502: { ajaxShow("Servidor ocupado.",destino); break }
case 503: { ajaxShow("O servidor n&atilde;o respondeu no tempo limite",destino); break }
default: { ajaxShow("Algum erro ocorreu ao carregar este conte&uacute;do...",destino); break }
}
ifila++;
if(ifila<fila.length)setTimeout("ajaxRun()",20);
}
}
xmlhttp.send(url);
}


conteudo da cab_mensagens.php

<?
session_start();
header("Content-Type: text/html; charset=ISO-8859-1",true);
include "conec.inc.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR...nsitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?

$sql_new = mysql_query("SELECT * FROM msgs_interna WHERE id_para='$idu' AND s='1'");
$sql_all = mysql_query("SELECT * FROM msgs_interna WHERE id_para='$idu'");
$all = mysql_num_rows($sql_all);
$new = mysql_num_rows($sql_new);

if($new >= 1){
echo "<a href='caixa_entrada.php'><span style='text-decoration: blink; color: red'><b>Mensagens:</b> (<b>".$new."</b> / ".$all.")</span></a>";
}else{
echo "<a href='caixa_entrada.php'><b>Mensagens:</b> (".$new." / ".$all.")</a>";
}

?>


aquele include eh soh conexão com o banco de dados....

bom testae ai pra vc, vê se vai dar certo, aqui tah dando certinho...
QUE DEUS ABENÇOE TODOS !!!!
---------------
Espero ter Ajudado alguém,
----------------------
Antes de postar, veja se realmente não tem outro jeito..




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq