Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Chat en Línea flotante

Estas en el tema de Chat en Línea flotante en el foro de Javascript en Foros del Web. Hola! Tengo un chat en línea en un div flotante. Lo que me gustaría hacer es que al momento de dar clic en el botón ...
  #1 (permalink)  
Antiguo 14/09/2013, 18:08
 
Fecha de Ingreso: enero-2013
Ubicación: Distrito Federal
Mensajes: 88
Antigüedad: 11 años, 3 meses
Puntos: 1
Chat en Línea flotante

Hola!

Tengo un chat en línea en un div flotante.
Lo que me gustaría hacer es que al momento de dar clic en el botón de enviar se ejecutará un archivo php que tiene la función de insertar en la BD. El chat se refresca cada 10 segundos por lo tanto podría mostrar el mensaje insertado después de 10 segundos sin que se vaya a otra página.

Alguien podría ayudarme o darme algún ejemplo?
Se que podría usar Javascript y AJAX pero no se utilizarlo mucho.

Gracias anticipadas

Última edición por nades; 14/09/2013 a las 18:39
  #2 (permalink)  
Antiguo 14/09/2013, 18:45
Avatar de jgdev13  
Fecha de Ingreso: abril-2013
Mensajes: 40
Antigüedad: 11 años
Puntos: 4
Respuesta: Chat en Línea flotante

Aquí tengo una función en Ajax:

Código Javascript:
Ver original
  1. function SendPost(url, params, callback)
  2.     {
  3.         var request;
  4.         var params_values = "";
  5.        
  6.         for(x in params)
  7.         {
  8.             params_values += x + "=" + params[x] + "&";
  9.         }
  10.        
  11.         // IE+7, Firefox, Chrome, Opera, Safari
  12.         if(window.XMLHttpRequest)
  13.         {
  14.             request = new XMLHttpRequest();
  15.         }
  16.         // IE5, IE5
  17.         else
  18.         {
  19.             request = new ActiveXObject("Microsoft.XMLHTTP");
  20.         }
  21.        
  22.         request.open("POST", url, true);
  23.         request.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  24.         request.send(params_values);
  25.        
  26.         request.onreadystatechange = function()
  27.         {
  28.             request.onload = function()
  29.             {
  30.                 var response = { data: request.responseText, status : request.status };
  31.            
  32.                 return callback(response)
  33.             }
  34.         }
  35.     }

Su uso sería así:
Código Javascript:
Ver original
  1. SendPost("http://misitio.com", {"username": username....}, function(response) {
  2.      if(response.status == 200) {
  3.          console.log(response.data)
  4.      }
  5. });

O..., podrías utilizar Jquery, que es más fácil: http://api.jquery.com/jQuery.post/

¿No has pensado utilizar websockets?, son muy eficientes para ese tipo de aplicaciones.
__________________
No intentes superar a nadie, ¡supérate a ti mismo!

Última edición por jgdev13; 14/09/2013 a las 18:48 Razón: edit code

Etiquetas: ajax-php-mysql, chat
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 19:40.