Ver Mensaje Individual
  #7 (permalink)  
Antiguo 04/11/2011, 12:47
PercevalCiro
 
Fecha de Ingreso: junio-2009
Mensajes: 64
Antigüedad: 15 años, 5 meses
Puntos: 6
Respuesta: como refrescar pagina sin pulsar f5?

Bueno aqui un ejemplo sencillo y completo:

1) crear dos archivos, en un servidor que soporte php, el primero es prueba.php y otro con index.php

el codigo de prueba.php

Código PHP:
<?php
echo " Hora actual- " date(" h : m : s");
?>
De este archivo obtendremos los valores.

el codigo de index.php

Código HTML:
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Act</title>
<script type="text/javascript">
    //Se toma el tiempo cada cuanto se realiza una actualizacion
    //cada 300 MILISEGUNDO se ejecuta el metodo Enviar()
    //y se pasa como argumento, la pagina prueba.php
    // y resultado, que sera el nombre de nuestro div en la pagina.
var timer = setInterval("Enviar('prueba.php','resultado')", 300);

//llamara a la funcion ajax, que lo que hara sera una peticion a la
//_pagina pasada como argumento, y la capa es donde se colocara el resultado.

function Enviar(_pagina,capa) {
var
ajax;
ajax = ajaxFunction();

ajax.open("POST", _pagina, true);

ajax.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded");
ajax.onreadystatechange = function()
{

if (ajax.readyState == 4)
{
document.getElementById(capa).innerHTML = ajax.responseText;

}}
ajax.send(null);
}

//Se instancia el objeto y se devuelve
//dependiendo del navegador.
function ajaxFunction() {
var xmlHttp;
try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
return xmlHttp;
} catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
return xmlHttp;
} catch (e) {
try {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
return xmlHttp;
} catch (e) {
alert("Tu navegador no soporta AJAX!");
return false;
}}}
}
</script>
        </head>
        <body>
            <!--Aqui se colocaran los datos obtenidos.-->
<div id="resultado">Nuestro Div Resultado.</div>
</body>
</html> 

Bueno y en este archivo usamos de nuevo el setInterval y a los tres milisegundos se solicita la pagina prueba.php, se obtiene el horario, y se coloca en el div con el id resultado.

Es interesante el siguiente experimento, podes ir modificando el archivo prueba, y dejar el otro corriendo, y vas a ver que despues de guardar los resultados cambian.

Cualquier duda, pregunta, pero te conviene revisar en internet un codigo mas completo.

Saludos.