Ver Mensaje Individual
  #4 (permalink)  
Antiguo 28/05/2012, 13:17
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Error con el servidor en AJAX, utilizando el WAMP

En primer lugar, bienvenido a FDW @astorga_as

Dado que son son tus primeros pasos y estás intentando aprender, toda experimentación es válida, pero creo que lo más importante es que encuentres siempre la solución más acorde a tu objetivo

Objetivo: Mostrar la hora del servidor.
Si tan solo con esto, date.php
Código PHP:
Ver original
  1. <?php
  2. echo date('H:i:s');
  3. ?>
php le va a responder a ajax. algo como esto
15:49:35,
Que necesidad entonces de crear un xml, parsearlo para recuperar el nodo, etc, etc, etc

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. //<![CDATA[
  3. function nuevoAjax()
  4. {
  5.         var xmlhttp=false;
  6.         try
  7.         {
  8.                 // Creacion del objeto AJAX para navegadores no IE
  9.                 xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
  10.         }
  11.         catch(e)
  12.         {
  13.                 try
  14.                 {
  15.                         // Creacion del objet AJAX para IE
  16.                         xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  17.                 }
  18.                 catch(E)
  19.                 {
  20.                         if (!xmlhttp && typeof XMLHttpRequest!="undefined") xmlhttp=new XMLHttpRequest();
  21.                 }
  22.         }
  23.         return xmlhttp;
  24. }
  25.  
  26. function conseguirhora()
  27. {
  28.         ajax=nuevoAjax();
  29.         ajax.open("GET", "date.php", true);
  30.         ajax.onreadystatechange=function()
  31.         {
  32. if(ajax.readyState == 4 && (ajax.status==200 || window.location.href.indexOf("http")==-1)){
  33.                         document.getElementById("showtime").innerHTML=ajax.responseText;
  34.                 }
  35.         }
  36.         ajax.send(null);
  37. }
  38. //]]>
  39. </script>

incluso, agregando esto en tu demo.php
Código PHP:
Ver original
  1. <div id="showtime" class="displaybox"><?php include('date.php'); ?></div>
y cargando la funcion onload con setInterval()

Código HTML:
Ver original
  1. <body style="background-color:#cccccc;text-align:center" onload="setInterval('conseguirhora()',5000);">

Ya tendrías un reloj dinámico(yo mostraría solo horas y minutos y que actualice cada 60 segundos, tampoco necesitas un cronómetro)

En tu ejemplo en particular, primero probá con
Código XML:
Ver original
  1. <?xml version="1.0" ?>
  2. <clock>
  3. <timenow>12:15</timenow>
  4. </clock>

es decir, hacé primero un xml normal, si funciona, substituí la hora por la funcion date, si en ese caso no te funciona, verificá que la configutración de php.ini para la entrada
short_open_tag, esté en off, caso contrario php te genera un error en el xml ya que interpreta <? como la apertura de código php

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.