Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Akwen

Reexecutar função a cada x segundos

Recommended Posts

Pessoal.. seguinte.. eu procurei aqui, e nao achei. Se houver um topico parecido, me desculpem. Seguinte... eu tenho um bloco de codigo php, e preciso que, a cada x segundos, eu reexecute este bloco de codigo. A página que tem esse codigo php, esta em um iframe na pagina principal do site, e gera um banner a ser exibido, inserindo no mysql quantas vezes ele foi visualizado. Se eu uso meta refresh, ele recarrega, mas a barra de status mostra q ta carregando algo, e o cursor do mouse muda... eu nao queria esse efeito, fica ruim... Aí pensei em Javascript.... fiz algo usando Ajax, mas tb nao deu. por algum motivo, ele nao consegue executar uma parada lá...oq eu poderia fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei a função abaixo no inicio da página:

 

<script>function teste() {alert("Teste");}setInterval("teste()", 10000); </script>

Com isso, eu consigo, a cada 10 segundos... Executar a função teste() . Eu preciso q assim.. ao executar essa função teste() eu automaticamente reexecute o codigo php abaixo:

 

<?php // <!-- Inicio banner -->// Chama arquivo responsavel pela conexao ao bancorequire 'classes/conexao.php';// Determina número de registros e gravando na variavel $registros$select = $db->select();$select->from('banners', 'iBannerID, iAreaBannerID, cvImgBanner, cvAltBanner, iHitsBanner, cvAlvoBanner, iAutBanner');$select->where('iAutBanner = 1');$select->where('iAreaBannerID = 1');$select->order('RAND()');$select->limit(1);$sql = $select->__toString();$resultado = $db->fetchAll($sql);$registros = count($resultado);if($registros==0){echo "<table width=561 height=84 border=0 cellpadding=0 cellspacing=0 background=../img/banner.gif>";echo "<tr>";echo "<td height=17 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "<tr>";echo "<td width=38> </td>";echo "<td width=467></td>";echo "<td width=56> </td>";echo "</tr>";echo "<tr>";echo "<td height=7 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "</table>";}else{$bannerID = $resultado[0]["ibannerid"];$imgBanner = $resultado[0]["cvimgbanner"];$altBanner = $resultado[0]["cvaltbanner"];$hitsBanner = $resultado[0]["ihitsbanner"];$alvoBanner = $resultado[0]["cvalvobanner"];$autBanner = $resultado[0]["iautbanner"];$hitsBanner++;$data = array(		'iHitsBanner' => $hitsBanner,);// define o adaptador padrão para todos os objetos Zend_Db_Tablerequire_once 'classes/Zend/Db/Table.php';class Banners extends Zend_Db_Table {protected $_primary = 'iBannerID';}$table = new Banners();$where = $db->quoteInto('iBannerID = ?', "$bannerID");$rows_affected = $table->update($data, $where);echo "<table width=561 height=84 border=0 cellpadding=0 cellspacing=0 background=../img/banner.gif>";echo "<tr>";echo "<td height=17 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "<tr>";echo "<td width=38> </td>";echo "<td width=467>";if (preg_match("/\.(swf){1}$/i", $imgBanner)) {echo "<script type=\"text/javascript\">";echo "var banner = \"$imgBanner\";";echo "var largura = \"468\";";echo "var altura = \"60\";";echo "</script>";echo "<script type=\"text/javascript\" src=\"../js/chamaFlash.js\"></script>";} else {echo "<a href=\"verBanner.php?id_banner=$bannerID\" alt=\"$altBanner\" target=\"$alvoBanner\"><img src=../$imgBanner border=0 width=468 height=60></a>";}echo "</td>";echo "<td width=56> </td>";echo "</tr>";echo "<tr>";echo "<td height=7 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "</table>";}// <!-- Fim banner -->?>

Alguma ideia pessoal?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei a função abaixo no inicio da página:

<script>function teste() {alert("Teste");}setInterval("teste()", 10000); </script>
Com isso, eu consigo, a cada 10 segundos... Executar a função teste() . Eu preciso q assim.. ao executar essa função teste() eu automaticamente reexecute o codigo php abaixo:
<?php // <!-- Inicio banner -->// Chama arquivo responsavel pela conexao ao bancorequire 'classes/conexao.php';// Determina número de registros e gravando na variavel $registros$select = $db->select();$select->from('banners', 'iBannerID, iAreaBannerID, cvImgBanner, cvAltBanner, iHitsBanner, cvAlvoBanner, iAutBanner');$select->where('iAutBanner = 1');$select->where('iAreaBannerID = 1');$select->order('RAND()');$select->limit(1);$sql = $select->__toString();$resultado = $db->fetchAll($sql);$registros = count($resultado);if($registros==0){echo "<table width=561 height=84 border=0 cellpadding=0 cellspacing=0 background=../img/banner.gif>";echo "<tr>";echo "<td height=17 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "<tr>";echo "<td width=38> </td>";echo "<td width=467></td>";echo "<td width=56> </td>";echo "</tr>";echo "<tr>";echo "<td height=7 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "</table>";}else{$bannerID = $resultado[0]["ibannerid"];$imgBanner = $resultado[0]["cvimgbanner"];$altBanner = $resultado[0]["cvaltbanner"];$hitsBanner = $resultado[0]["ihitsbanner"];$alvoBanner = $resultado[0]["cvalvobanner"];$autBanner = $resultado[0]["iautbanner"];$hitsBanner++;$data = array(		'iHitsBanner' => $hitsBanner,);// define o adaptador padrão para todos os objetos Zend_Db_Tablerequire_once 'classes/Zend/Db/Table.php';class Banners extends Zend_Db_Table {protected $_primary = 'iBannerID';}$table = new Banners();$where = $db->quoteInto('iBannerID = ?', "$bannerID");$rows_affected = $table->update($data, $where);echo "<table width=561 height=84 border=0 cellpadding=0 cellspacing=0 background=../img/banner.gif>";echo "<tr>";echo "<td height=17 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "<tr>";echo "<td width=38> </td>";echo "<td width=467>";if (preg_match("/\.(swf){1}$/i", $imgBanner)) {echo "<script type=\"text/javascript\">";echo "var banner = \"$imgBanner\";";echo "var largura = \"468\";";echo "var altura = \"60\";";echo "</script>";echo "<script type=\"text/javascript\" src=\"../js/chamaFlash.js\"></script>";} else {echo "<a href=\"verBanner.php?id_banner=$bannerID\" alt=\"$altBanner\" target=\"$alvoBanner\"><img src=../$imgBanner border=0 width=468 height=60></a>";}echo "</td>";echo "<td width=56> </td>";echo "</tr>";echo "<tr>";echo "<td height=7 colspan=3><img src=../img/1x1.gif width=1 height=1 /></td>";echo "</tr>";echo "</table>";}// <!-- Fim banner -->?>
Alguma ideia pessoal?
Acredito que se você usar ajax dá, tenta pegar a função do 'micox', 'ajaxGet' e dentro da função você chama o arquivo php, então você atualiza o local onde você vai colocar este cócigo com o retorno da função do ajax.

Compartilhar este post


Link para o post
Compartilhar em outros sites

com ajax da para fazer tranquilo!!

 

olha esse screencast o cara faz o treco muito simples

http://www.dustindiaz.com/screencast-episode-02/

 

ai você faz as modificações para chamar em n tempos

 

 

 

the void

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.