Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/06/2010, 16:14
Avatar de JavierMMM
JavierMMM
 
Fecha de Ingreso: agosto-2008
Ubicación: Justito frente a la computadora.
Mensajes: 278
Antigüedad: 16 años, 5 meses
Puntos: 0
Pregunta Envio de una cadena

Hola de nuevo... Quizá este tema lo relacionen con alguno que ya haya posteado anteriormente, pero es conforme va evolucionando mi aplicación, voy preguntando. De antemano pido disculpas a los moderadores, por si creen que estoy repitiendo temas.

Ahora tengo un problema "multiplataforma", y lo detallo para darme a entender mejor:

Tengo una aplicación en asp que me genera una serie de cadenas desde una consulta sql server. Está consulta me trae n cadenas que proceso en una función y obtengo un resultado por cada una de las cadenas obtenidas.

Ahora bien, lo que me está haciendo ruido, es que esas cadenas debo enviarlas mediante ajax a una página en dónde tengo la función que las procesa y el resultado lo voy a imprimir en una serie de DIV´s en mi página principal. Lo que sucede es que al generar las cadenas, las pongo en una variable "nombre_carpeta" (la cual puede traer n cadenas), y trato de enviarlas, pero al retornar el resultado, descubro que sólo me toma la primer cadena generada. Anexo el código:

Código:
Set Conn = Server.CreateObject("ADODB.Connection")
Set Ors = Server.CreateObject("ADODB.Recordset")
Set Ins = Server.CreateObject("ADODB.Recordset")
Conn.open = "DSN=cnx;UID=javier;PWD=manzano;DATABASE=EDUC06K"
Ors.open "Select... From.. Where...", Conn
Do While not Ors.eof
	'nombre_carpeta = Ors("Archivo") 
	nm = Ors("Archivo") 
	nombre_carpeta = nombre_carpeta & nm & "," & "<br />"
	nm = ""
	cantidad = Ors("Cantidad")
	r = r + cantidad
	%>
	<form action='post'>
		<input type='hidden' name='nombre_carpeta' id='nombre_carpeta' value="<%=nombre_carpeta%>" />
	</form>
	<%
	Ors.movenext
Loop
Ors.Close
set fs=nothing
for i=0 to (r-1)
	response.Write("<div id='campoMensaje"&i&"' align='center'></div>")
Next
y envio con la siguiente función:
Código:
<script>
	verificaUsuario()
</script>
Código:
<script language="javascript" type="text/javascript">

function handleHttpResponse() 
{
    if (http.readyState == 4)
	{
       if (http.status == 200)
	   {
          if (http.responseText.indexOf('invalid') == -1)
		  {
             // Armamos un array, usando la coma para separar elementos
             results = http.responseText.split(",");
			 //document.getElementById("campoMensaje").innerHTML = results[0];
			 for(var cont=0; cont<=9; cont++)
				{
					document.getElementById("campoMensaje"+cont.toString()).innerHTML = results[cont];
				}
             enProceso = false;
          }
       }
    }
}

function verificaUsuario()
{
    if (!enProceso && http)
	{
	   var valor = escape(document.getElementById("nombre_carpeta").value);
       var url = "consulta.asp?nombre_carpeta="+ valor;
	   //top.document.write(valor);
       http.open("GET", url, true);
       http.onreadystatechange = handleHttpResponse;
       enProceso = true;
       http.send(null);
    }
}

function getHTTPObject() 
{
    var xmlhttp;
    /*@cc_on
    @if (@_jscript_version >= 5)
       try {
          xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
       } catch (e) {
          try {
             xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
          } catch (E) { xmlhttp = false; }
       }
    @else
    xmlhttp = false;
    @end @*/
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') 
	{
       try 
	   {
          xmlhttp = new XMLHttpRequest();
       } catch (e) { xmlhttp = false; }
    }
    return xmlhttp;
}

var enProceso = false; // lo usamos para ver si hay un proceso activo
var http = getHTTPObject(); // Creamos el objeto XMLHttpRequest

</script>
¿Alguién tiene una ídea de cómo puedo hacerlo?