• Publicidad

Error de consulta en Ajax

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Error de consulta en Ajax

Notapor zozo666 » 2008-04-23 13:09 @590

Buenas tardes perleros, necesito saber si saben cómo solucionarme esta cuestión. Corro una función Ajax en el HTML, que realiza una consulta y me devuelve dos valores. Luego, con esos valores, uno lo listo en un div y el otro lo pongo en un hidden. Hasta ahí, perfecto; el problema empieza cuando a veces la función Ajax al hacer la consulta me devuelve lo siguiente:

Sintáxis: [ Descargar ] [ Ocultar ]
  1. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
  2.  
  3. <html><head> 
  4.  
  5. <title>500 Internal Server Error</title> 
  6.  
  7. </head><body> 
  8.  
  9. <h1>Internal Server Error</h1> 
  10.  
  11. <p>The server encountered an internal error or 
  12.  
  13. misconfiguration and was unable to complete 
  14.  
  15. your request.</p> 
  16.  
  17. <p>Please contact the server administrator, 
  18.  
  19. root@localhost and inform them of the time the error occurred, 
  20.  
  21. and anything you might have done that may have 
  22.  
  23. caused the error.</p> 
  24.  
  25. <p>More information about this error may be available 
  26.  
  27. in the server error log.</p> 
  28.  
  29. <hr> 
  30.  
  31. <address>Apache/2.0.52 (servidor) Server at direccion Port 80</address> 
  32.  
  33. </body></html> 


Sé que este problema es porque el servidor funciona mal o la consulta no se realiza adecuadamente. Acá el problema está en el servidor que está funcionando mal, porque en la consulta hay momentos que me la hace sin problemas y funciona ok, y otros momentos que no, pero más allá del problema. Lo que quiero saber es cómo hacer para que lo que me devuelva no sea ese error, sino algo que lo defina yo.

O sea, en el return(valor1,valor2) si alguno de estos valores tiene problema que cuando se reciban en el HTML (yo estoy usando un callback) y la función JavaScript que lo reciba se de cuenta del error y me avise, por ejemplo, mediante un alert que se produjo un error en la consulta.

¿De qué manera hago esto?

Muchas gracias desde ya. Adiós
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Publicidad

Notapor explorer » 2008-04-23 13:39 @610

Mira antes los logs del servidor web, para ver exactamente el mensaje de error que el servidor web ha encontrado.

Luego, en el lado del servidor, puedes hacer que la consulta sea dentro de un eval { }, con lo que el proceso no terminará de forma brusca. Si después de la consulta, la analizas, y ves que ha ocurrido un error, entonces preparas la respuesta Ajax con un mensaje de error para que lo vea el usuario en lugar del resultado esperado. Se le puede indicar que lo intente pasados unos minutos/segundos o darle alguna alternativa más.

Por otra parte, del lado del cliente, también puedes editar el callback. Puedes mirar el código devuelto antes de asignarlo al <div>, y si es un error, redireccionar la página, volver a hacer la petición, cambiar el mensaje, etc. etc. En JavaScript hay funciones para hacer búsquedas de patrones, con lo que puedes saber el contenido de la respuesta, antes de presentarla.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2008-04-23 15:18 @679

Muchas gracias. Implementé lo que me dijistes, funciona bien. Muchas gracias.
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 13 invitados

cron