Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Problema PHP con algo de Ajax

Estas en el tema de Problema PHP con algo de Ajax en el foro de Frameworks JS en Foros del Web. Hola.....mi problema radica en q no se ejecutan correctamente las acciones q declare en Ajax...En realidad funcionan bien...pero dejan de hacerlo cuando incluyo en la ...
  #1 (permalink)  
Antiguo 08/03/2010, 07:24
Avatar de Gulinaidas  
Fecha de Ingreso: febrero-2010
Ubicación: La Plata, ARG
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 1
Problema PHP con algo de Ajax

Hola.....mi problema radica en q no se ejecutan correctamente las acciones q declare en Ajax...En realidad funcionan bien...pero dejan de hacerlo cuando incluyo en la pagina donde utilizo Ajax la Cabecera.php q tiene lo siguiente:

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SPEL</title>

<style>
    
    body.cuerpo {
    background-color: #EAEAEA;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10px;
    color: #828282;
    }
    .columna1 {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 9px;
        color: #828282;
    }
    
    .columna2 {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 9px;
        color: #828282;
    }
    
    .text_blanck {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 9px;
        font-style: normal;
        color: #FFF;
    }
    .login 
    {
    width:150px;
    top:6px;
    color:grey; 
    font-style:italic;
    }
    
    .LV_validation_message{
        font-weight:bold;
        margin:0 0 0 5px;
    }
    
    .LV_valid {
        color:#00CC00;
    }
        
    .LV_invalid {
        color:#CC0000;
    }
        
    .LV_valid_field,
    input.LV_valid_field:hover, 
    input.LV_valid_field:active,
    textarea.LV_valid_field:hover, 
    textarea.LV_valid_field:active {
        border: 1px solid #00CC00;
    }
        
    .LV_invalid_field, 
    input.LV_invalid_field:hover, 
    input.LV_invalid_field:active,
    textarea.LV_invalid_field:hover, 
    textarea.LV_invalid_field:active {
        border: 1px solid #CC0000;
    }
    
</style>


<script type="text/javascript">
<!--
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_nbGroup(event, grpName) { //v6.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) {
      img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    nbArr = document[grpName];
    if (nbArr)
      for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
      nbArr[nbArr.length] = img;
  } }
}
//-->
</script>
</head>

<body class="cuerpo" bgcolor="#99CC33" background="#99CC33">
<table width="100%" align="center" cellspacing="0">
  <tr>
    <th class="columna1" height="100" align="center" valign="middle" bgcolor="#99CC33" scope="col">
    <table width="800" align="center" cellspacing="0">
      <tr>
        <th class="columna1" align="left" valign="middle" scope="col"><img src="../Recursos/Imagenes/EstiloImg/sml_encabezado.jpg" width="279" height="100" /></th>
        <th class="columna1" width="300" align="center" valign="middle" scope="col"><table width="250" cellpadding="3" cellspacing="0">
              
            <?php
                
if ($_SESSION["idUsuario"] == NULL)
                {
                    include_once(
"Login.php"); 
                }
                else
                {
                    include(
"Logued.php");
                } 
            
?>
          
        </table></th>
      </tr>
    </table></th>
  </tr>
</table>
<table width="100%" align="center" cellspacing="0">
  <tr>
    <th class="columna1" align="center" valign="middle" bgcolor="#787878" scope="col"><table border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>

        <td class="columna2"><a href="Index.php" target="_top" onclick="MM_nbGroup('down','group1','inicioa','',1)" onmouseover="MM_nbGroup('over','inicioa','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/inicio_a.png" alt="" name="inicioa" width="142" height="34" border="0" id="inicioa" onload="" /></a></td>
        <td class="columna2"><a href="javascript:;" target="_top" onclick="MM_nbGroup('down','group1','quienessomos','',1)" onmouseover="MM_nbGroup('over','quienessomos','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/quienessomos.png" alt="" name="quienessomos" width="142" height="34" border="0" id="quienessomos" onload="" /></a></td>
        <td class="columna2"><a href="javascript:;" target="_top" onclick="MM_nbGroup('down','group1','consultaenlinea','',1)" onmouseover="MM_nbGroup('over','consultaenlinea','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/consultaenlinea.png" alt="" name="consultaenlinea" width="142" height="34" border="0" id="consultaenlinea" onload="" /></a></td>
        <td class="columna2"><a href="RegistrarMedico1.php" target="_top" onclick="MM_nbGroup('down','group1','afiliarce','',1)" onmouseover="MM_nbGroup('over','afiliarce','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/afiliarce.png" alt="" name="afiliarce" width="142" height="34" border="0" id="afiliarce" onload="" /></a></td>
        <td class="columna2"><a href="PanelControlMedico.php" target="_top" onclick="MM_nbGroup('down','group1','medicos','',1)" onmouseover="MM_nbGroup('over','medicos','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/medicos.png" alt="" name="medicos" width="142" height="34" border="0" id="medicos" onload="" /></a></td>
        <td class="columna2"><a href="javascript:;" target="_top" onclick="MM_nbGroup('down','group1','final','',1)" onmouseover="MM_nbGroup('over','final','','',1)" onmouseout="MM_nbGroup('out')"><img src="../Recursos/Imagenes/EstiloImg/barra de navegación/final.png" alt="" name="final" width="142" height="34" border="0" id="final" onload="" /></a></td>
      </tr>
    </table></th>
  </tr>
  

</table>



</body>
</html>
Perdon por poner tanto codigo.....Alguna sugerencia de q podria ser, o cuales son las condiciones a tener en cuenta al usar Ajax para q funcione? Gracias
  #2 (permalink)  
Antiguo 08/03/2010, 07:32
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 17 años, 1 mes
Puntos: 5
Respuesta: Problema PHP con algo de Ajax

Esto es muy general, ¿q es lo q no te funciona?
Con este código q has puesto habría q ser medio psíquico para adivinar el problema.
Pon el otro código y además dinos q es lo q no te funciona
  #3 (permalink)  
Antiguo 08/03/2010, 07:32
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años, 6 meses
Puntos: 127
Respuesta: Problema PHP con algo de Ajax

explicate mejor que asi es casi imposible ayudarte.

ojo que tu hiciste el codigo no nosotros deverias ser mas espesifico.
aprende a debugear (depurar).
aprende a usar firebug.
  #4 (permalink)  
Antiguo 09/03/2010, 07:21
Avatar de Gulinaidas  
Fecha de Ingreso: febrero-2010
Ubicación: La Plata, ARG
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Problema PHP con algo de Ajax

Perdon si no me supe explicar bien......Aclaro q se debugear correctamente pero aun no encuentro solucion....

Tengo esto..

Código PHP:
<?php
require_once("xajax_core/xajaxAIO.inc.php");
$xajax = new xajax();

function 
getMedicosByNombre($name)
    {
        
$m = new ArrayObject();

        
$medicoDAO = new MedicoDAO();
        
        
$m $medicoDAO->getMedicoByNombreOrApellido("%".$name."%");
        
        
$print "<table border=1><tr><td>APELLIDO Y NOMBRE</td><td>ESPECIALIDAD</td><td>ACCION</td></tr>";
        for(
$i 0$i $m->count(); $i++)
        {
            
$print .= "<tr>";
            
$print .= "<td>" .  strtoupper($m[$i]->getApellido()) . " " $m[$i]->getNombre() . "</td>";
            
$print .= "<td>" $m[$i]->getComentarios() . "</td>";
            
$print .= "<td><a href=../Formularios/Mes.php?idMed=" $m[$i]->getIdMedico() . ">Ver turnos disponibles</a></td>";
            
$print .= "</tr>";
        }
        
$print .= "</table>";
        
        
$respuesta = new xajaxResponse();
        
$respuesta->assign("medicos","innerHTML"$print);
        
//tenemos que devolver la instanciación del objeto xajaxResponse
        
return $respuesta;
    }

$xajax->registerFunction("getMedicosByNombre");
$xajax->processRequest();

?>
<html>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=ISO-8859-1">
    <head>
        <?php $xajax->printJavascript(); ?>
                
            
    </head>
    
    <body>
        
        <center>
            <h1>Medicos - SPEL</h1>
            <br><br>
                        <div id="div0" style="display:none;">
                <form name="formNombre">
                <table>
                    <tr>
                        <td><label>Nombre o Apellido: </label><br>
                        <input type="text" name="txtNombre" id="txtNombre" /><input type="button" value="Buscar" id="btnBuscarNombre" onClick="xajax_getMedicosByNombre(document.formNombre.txtNombre.value)"/><br><br></td>
                    </tr>
                </table>
                </form>
            </div>
            
                        
            <div id="medicos"></div>
            
        </center>
        <br><br><br>
    </body>
    
</html>
Este codigo FUNCIONA CORRECTAMENTE, es decir, si pongo un nombre en un text me imprimi todos los nombres de medicos automaticamente..... Pero si hago un include de la pagina Cabecera.php detallada arriba....deja de andar la funcion de Ajax.......Desde ya gracias
  #5 (permalink)  
Antiguo 09/03/2010, 09:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Tema movido desde PHP a AJAX

Etiquetas: ajax, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:08.