Foros del Web » Programando para Internet » PHP »

Problemas con xajax y formularios

Estas en el tema de Problemas con xajax y formularios en el foro de PHP en Foros del Web. buenas noches, tengo un problema que requiere de mucha urgencia para encontrar su solución, actualmente tengo una web funcionando hacen aproximadamente 4 meses, hasta hacen ...
  #1 (permalink)  
Antiguo 26/05/2012, 21:07
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 2 meses
Puntos: 2
Problemas con xajax y formularios

buenas noches, tengo un problema que requiere de mucha urgencia para encontrar su solución, actualmente tengo una web funcionando hacen aproximadamente 4 meses, hasta hacen 3 días no tenia problemas.

uno de mis contactos me comento que no le estaba funcionando la pagina bien, y al yo revisar esto me di cuenta del error pero no se porque esta sucediendo si como les explique funcionaba bien.


En un archivo php he creado un formulario y en este un botón GUARDAR, que registra en la base de datos los elementos de dicho formulario que son aproximadamente 10 elementos, la llamada al procedimiento la hago de esta manera.

<form id='formulario1' name='formulario1'>
... elementos ...

<input type="button" name="bguardar" id="bguardar" onclick="xajax_guardardatos(document.getFormValues ('formulario1') );">

</form>


y en la funcion xajax en el mismo archivo PHP lo tengo de esta manera básicamente.

function guardardatos($elementos){

$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('ISO-8859-1');

.... SQL DONDE GUARDA EN LA BASE DE DATOS (NO HAY PROBLEMA CON ESTO) ....

return $respuesta;
}


Si envío un mensaje de prueba dentro de la función con el fin de probar que si esta entrando en esta, no me lo muestra el mensaje, pero si le quito parametro $elementos y comento todo dentro de la función si me muestra dicho mensaje.

con lo cual concluyo que el problema esta al pasar todos los elementos del formulario a esta función.

Como hago para solucionar el problema ?

Tendra algo que ver el servidor Hosting ?

tengo mucha angustia con este tema ya que entre mas tiempo pase es peor, estoy seguro ustedes me entienden. Gracias.

Se me olvido comentarles que localmente me sigue funcionando bien.
  #2 (permalink)  
Antiguo 27/05/2012, 00:52
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Problemas con xajax y formularios

aja, muy bonito todo, pero.... donde esta el código??? lo que muestras no es relevante, deberías mostrar el código de xajax_guardardatos tanto de javascript como php, y otra cosa, si vas a mostrar código debes hacerlo completo y no desestimar partes que creas que funcionan bien, muchas veces los errores se "esconden" donde el programador piensa que el código esta correcto
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 27/05/2012, 07:20
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Problemas con xajax y formularios

Muchas gracias Nemutagk por su respuesta, aunque creo que no es necesario ver el código completo porque como lo exprese anteriormente, esto funciono bien durante 4 meses inclusibe localmente aun me funciona sin problemas, mas sin embargo se los voy a pegar


function guardardatos($datos){

$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('UTF-8');

$ele1 = $datos["elemento1"];
$ele2 = $datos["elemento2"];
$ele3 = $datos["elemento3"];
$ele4 = $datos["elemento4"];
$ele5 = $datos["elemento5"];
$ele6 = $datos["elemento6"];

..... validaciones .....

include ("conexion.php");
$sql = "insert into mi_tabla (campo1,campo2,campo3,campo4,campo5,campo6) values('$ele1','$ele2','$ele3','$ele4','$ele5','$e le6')";
mysql_query($sql, $conexion);

$respuesta->Script("Alert('Su información fué guardada.');");



return $respuesta;
}


no he incluido las validaciones porque no son relevantes, gracias nuevamente.

PD. en todos los formularios tengo el mismo problema, este es uno de ellos.
  #4 (permalink)  
Antiguo 28/05/2012, 09:09
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

Hola Jai_me dices que en guardarDatos() está el problema???


pon este código y dinos que tal va

Código PHP:
Ver original
  1. function guardardatos($datos){
  2. echo 'entrando...';
  3. $respuesta = new xajaxResponse();
  4. echo 'seteando charset...';
  5. $respuesta->setCharacterEncoding('UTF-8');
  6. echo 'obteniendo elementos...';
  7. $ele1 = $datos["elemento1"];
  8. $ele2 = $datos["elemento2"];
  9. $ele3 = $datos["elemento3"];
  10. $ele4 = $datos["elemento4"];
  11. $ele5 = $datos["elemento5"];
  12. $ele6 = $datos["elemento6"];
  13. echo 'validando...';
  14. ..... validaciones .....
  15. echo 'conexion...';
  16. include ("conexion.php");
  17. $sql = "insert into mi_tabla (campo1,campo2,campo3,campo4,campo5,campo6) values('$ele1','$ele2','$ele3','$ele4','$ele5','$e le6')";
  18. echo 'ejecuto query......';
  19. mysql_query($sql, $conexion) or die ('Error: '.mysql_error());
  20. echo 'saliendo...';
  21. $respuesta->Script("Alert('Su información fué guardada.');");
  22.  
  23.  
  24. echo 'fin...';
  25. return $respuesta;
  26. }
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #5 (permalink)  
Antiguo 28/05/2012, 09:55
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problemas con xajax y formularios

Xajax no te va a responder por el navegador si tu función php da un error o advertencia. Para resolver esto, usa firefox e instala el addon firebug, éste te mostrará lo que responde xajax aunque no se vea en el navegador, así será más fácil corregir cualquier error.
  #6 (permalink)  
Antiguo 28/05/2012, 10:02
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

ocp001a pero poniendole un "echo" al archivo ejecutado en xajax se puede visualizar lo que está sucediendo... al menos yo así lo hago cuando tengo un error... empiezo a colocar paso a paso lo que va haciendo el xajax hasta encontrar el error...

además de que tmb uso el firebug... pero si el no tiene idea de para que es y nunca lo ha visto en acción puede ser un poco pesado o incluso molesto...

pero es buena recomendación
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #7 (permalink)  
Antiguo 28/05/2012, 10:30
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Problemas con xajax y formularios

Gracias a los dos por las respuestas, la opción del amigo p414 no me funciona incluso es la misma técnica que uso para encontrar los errores, pero en este caso no me muestra ningún mensaje, como si estuviera bloqueado, pero si le quito el parámetro $elementos de la función si me comienza a enviar los mesajes de prueba, por eso digo que el problema es pasar por parametro el fomulario, claro esto antes no estaba así, no sucedia.

tocara probar con el validador que comenta ocp001a.
  #8 (permalink)  
Antiguo 28/05/2012, 10:52
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

veo que primero mencionas a esta funcion xajax_guardardatos pero luego la que estas modificando es guardardatos

estás seguro que son la misma???
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #9 (permalink)  
Antiguo 28/05/2012, 11:29
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Problemas con xajax y formularios

Gracias p414, peso sin son la misma funcion, al llamarla tengo que hacerlo de esta manera en el onclick del boton xajax_guardardatos(getFormValues('formulario1'));

y la función

function guardardatos($elementos){

$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('UTF-8');

$ele1 = $datos["elemento1"];
$ele2 = $datos["elemento2"];
$ele3 = $datos["elemento3"];
$ele4 = $datos["elemento4"];
$ele5 = $datos["elemento5"];
$ele6 = $datos["elemento6"];

..... validaciones .....

include ("conexion.php");
$sql = "insert into mi_tabla (campo1,campo2,campo3,campo4,campo5,campo6) values('$ele1','$ele2','$ele3','$ele4','$ele5','$e le6')";
mysql_query($sql, $conexion);

$respuesta->Script("Alert('Su información fué guardada.');");



return $respuesta;

}

al cambiarla un poco e intentar detectar los errores la deje así y no funciona, no manda el mensaje al final (debería enviarlo)

function guardardatos($elementos){

$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('UTF-8');
$respuesta->Script("Alert('Su información fué guardada.');");
return $respuesta;

}


pero si la modifico de esta manera

function guardardatos(){

$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('UTF-8');
$respuesta->Script("Alert('Su información fué guardada.');");
return $respuesta;

}


hay si funciona y manda el mensaje, en definitiva funciona cuando le quito el parametro ($elementos).

obviamente lo quito también cuando hago la llamada de la funcion escrita arriba.

Como les explique, este problema me esta sucediendo desde hacen 3 días ya que funcionaba todo perfecto, no se si mi proveedor de hosting hicieron algunos cambios.




espero haber sido claro y de esa manera poder encontrar una solución a este problema que me esta volviendo loco, les recuerdo que localmente me funciona bien.
  #10 (permalink)  
Antiguo 28/05/2012, 11:37
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

ok.... ya encontramos entonces que el problema es el parametro $elementos... quiza se está enviando de forma errónea, incompleta o "marciana" ... puedes poner la forma como lo envías???
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #11 (permalink)  
Antiguo 28/05/2012, 12:00
 
Fecha de Ingreso: enero-2010
Mensajes: 247
Antigüedad: 14 años, 2 meses
Puntos: 2
Respuesta: Problemas con xajax y formularios

gracias, siempre he sabido que el problema esta allí, pero como te comente ese problema no existía en 4 meses de estar funcionando la pagina, y de un momento a otro ya no sirve y no he realizado ningún tipo de actualización por el estilo.

como por arte de magia dejo de funcionar, localmente me funciona perfecto.

de todas formas la funcion la llamo de esta manera

<form id='formulario1' name='formulario1'>

... mas elementos ...

<input type="button" name="bguardar" id="bguardar" onclick="xajax_guardardatos(document.getFormValues ('formulario1') );">

</form>
  #12 (permalink)  
Antiguo 28/05/2012, 12:09
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

<form id='formulario1' name='formulario1'>

ahi veo que no usas method... asi que por default lo interpreta en GET y tmb veo que no tienes action y sobreentiendo que es sobre el mismo archivo... ahora... dices tmb que no puedes modificar el archivo de "guardar", no puedes poner por lo menos un print_r($_GET) en el archivo de guardar? sería de utilidad para poder ver que es lo que está llegandole al archivo... quiza se hizo alguna modificación y ahi es donde se truncó todo
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #13 (permalink)  
Antiguo 28/05/2012, 13:07
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problemas con xajax y formularios

p414: xajax funciona de cierta manera que seguramente no conoces, por lo que veo en tus comentarios. Al pasar el formulario por xajax no importa el method del form.

JAI_ME: Si dices que antes funcionaba y ahora no, quizá en tu host actualizaron el php o bien cambiaron los datos de la bd. Pero esto sólo lo podrás saber con seguridad en cuanto veas con el firebug lo que retorna la llamada, la cual como te decía puede no ser un error, con que sólo sea un warning xajax ya no podrá procesar la llamada y no mostrará nada.
  #14 (permalink)  
Antiguo 28/05/2012, 13:12
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

ocp001a se como funciona xajax... pero en mi caso lo uso con el evento submit... lo detecto, hago mi petición, interpreto el resultado y cancelo el evento submit... no lo hago de forma "directa" sin esos parámetros... y como bien dices... con el firebug es una buena opción

Jai_me aqui dejo el link para que lo instales y nos muestres lo que arroja la consola
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!
  #15 (permalink)  
Antiguo 28/05/2012, 13:20
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problemas con xajax y formularios

Cita:
Iniciado por p414 Ver Mensaje
ocp001a se como funciona xajax... pero en mi caso lo uso con el evento submit... lo detecto, hago mi petición, interpreto el resultado y cancelo el evento submit... no lo hago de forma "directa" sin esos parámetros... y como bien dices... con el firebug es una buena opción

Jai_me aqui dejo el link para que lo instales y nos muestres lo que arroja la consola
Bien, lamento si te sentiste ofendido en tus conocimientos, mi intención no era esa, pero en tu comentario

Cita:
veo que primero mencionas a esta funcion xajax_guardardatos pero luego la que estas modificando es guardardatos
así lo parecía.
  #16 (permalink)  
Antiguo 28/05/2012, 13:22
Avatar de p414  
Fecha de Ingreso: agosto-2009
Ubicación: casi casi casi... a un lado de la cuna...
Mensajes: 575
Antigüedad: 14 años, 7 meses
Puntos: 44
Respuesta: Problemas con xajax y formularios

hehehehe no me ofendí solo que en ocasiones me es difícil explicarme hehehehehehe y con el comntario de xajax_guardardatos... veo que usa dos nombres distintos de funciones... (desconozco cual es el motivo por el cual tiene los 2 nombres...) pero ciertamente con el firebug es un poco más sencillo encontrar el "bug" del script
__________________
Desde hace tiempo estoy esperandote... bienvenido mi pequeño Diego!!!

Etiquetas: formulario, sql, xajax
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 07:35.