Me surgió un problemin usando AJAX que no comprendo su por qué...
Primero dejo los codigos, asi despues es mas facil la explicación:
stats_tracking.php
Código :
<?php session_start(); include '../../functions/database.php'; include '../../functions/logg.php'; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <script language="javascript"> function nuevoAjax(){ var xmlhttp=false; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function cargarContenido(){ var t1, t2, contenedor; contenedor = document.getElementById('tabla_stats'); t1 = document.getElementById('desde').value; t2 = document.getElementById('hasta').value; ajax=nuevoAjax(); ajax.open("POST", "./tracking.php",true); ajax.onreadystatechange=function() { if (ajax.readyState==4) { contenedor.innerHTML = ajax.responseText } } ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); ajax.send("t1="+t1+"&t2="+t2) } </script> <body> <div style="width: 330px; height: auto; background-color: #EFEFEF; border: 1px solid #BBBBBB; padding: 20px 10px 15px 25px; font-family: Verdana; font-size: 12px;text-align:center; margin:0 auto 0 auto;"> <form onSubmit="cargarContenido(); return false"> Desde : <input type="text" value="AAAA-MM-DD" name="desde" id="desde"><br /> Hasta : <input type="text" value="AAAA-MM-DD" name="hasta" id="hasta"><br /><br /> <input type="submit" value="Buscar" onPress="cargarContenido()" /> </form> </div> <div id="tabla_stats" style="width:450px; height: auto; background-color: #EFEFEF; border: 1px solid #BBBBBB; padding: 20px 10px 15px 25px; font-family: Verdana; font-size: 12px;text-align:center; margin:20px auto 0 auto;"> </div> </body> </html>
tracking.php
Código :
<table> <tr> <td>Usuario</td> <td>Página</td> <td>Fecha</td> <td>Hora</td> </tr> <?php include '../../functions/database.php'; include '../../functions/fecha.php'; if($_POST['t1'] == $_POST['t2']){ $ask ="SELECT * FROM tracking WHERE fecha ='".$_POST['t1']."'"; }else{ $ask = "SELECT * FROM tracking WHERE fecha > '".$_POST['t1']."' AND fecha < '".$_POST['t2']."'"; } $query = mysql_query($ask, $conn); while($result = mysql_fetch_object($query)){ //$affected = mysql_affected_rows($conn); switch($result->tipo){ case 0: $td_bgcolor = 'class="bgred"'; break; case 1: $td_bgcolor = 'class="bgorange"'; break; case 2: $td_bgcolor = 'class="bgyellow"'; break; case 3: $td_bgcolor = 'class="bggreen"'; break; case 4: $td_bgcolor = 'class="bgwhite"'; break; } ?> <tr> <?php $ask = "SELECT nombre, apellido FROM usuarios WHERE id = '".$result->usuario."'"; $query2 = mysql_query($ask, $conn); $nombre = mysql_fetch_array($query2); ?> <td <?php echo $td_bgcolor;?>><?php echo $nombre[0].' '.$nombre[1]; ?></td> <?php $ask = "SELECT titulo FROM paginas WHERE id = '".$result->pagina."'"; $query3 = mysql_query($ask, $conn); $page = mysql_fetch_array($query3); ?> <td <?php echo $td_bgcolor;?>><?php echo $page[0] ?></td> <td <?php echo $td_bgcolor;?>><?php echo fecha_num_stand($result->fecha);?></td> <td <?php echo $td_bgcolor;?>><?php echo $result->hora; ?></td> </tr> <?php } ?> </table>
Esto, cargando stats_tracking.php, funciona. El problema viene cuando cargo stats_tracking dentro de otra pagina tambien usando AJAX, al enviar las fechas ingresadas en el formulario termina por pasarlas como si fuese en metodo GET (veo los id's de los text inputs como variables pasadas en metodo GET. Ni siquiera t1 y t2). En fin, la barra de dirección del explorador queda asi:
Código :
http://localhost/cursare/admin/?desde=2006-06-13&hasta=2006-06-13
No sabrán por qué funciona por separado, y cuando lo llamo desde otro lugar no?

Grax!!
Pablo