Foros del Web » Programando para Internet » ASP Clásico »

Como hacer un implode en ASP

Estas en el tema de Como hacer un implode en ASP en el foro de ASP Clásico en Foros del Web. Buenas, Tengo guardado en un array valores de un gráfico, y no consigo pasar los valores del array separados por comas, para que quede de ...
  #1 (permalink)  
Antiguo 05/01/2010, 06:49
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Como hacer un implode en ASP

Buenas,

Tengo guardado en un array valores de un gráfico, y no consigo pasar los valores del array separados por comas, para que quede de la siguiente forma

[94,93,162,85,140,160,151,63,58,129,130,95]

Si lo imprimo tal cual obtengo
[949316285140160151635812913095]

Código ASP:
Ver original
  1. <&#37;
  2. Response.Write("[")
  3. For Each item In SolucionadasArray
  4.     Response.Write(item)
  5. Next
  6. Response.Write("]")
  7. %>

Y si pruebo añadir las comas en cada item no consigo el resultado deseado
[,94,93,162,85,140,160,151,63,58,129,130,95,]

Código ASP:
Ver original
  1. <%
  2. Response.Write("[")
  3. For Each item In SolucionadasArray
  4.     Response.Write(item & ",")
  5. Next
  6. Response.Write("]")
  7. %>

Podéis decirme como puedo hacerlo? existe alguna función en ASP para hacerlo como en PHP
$comma_separated = implode(",", $array);

Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 05/01/2010, 08:26
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Como hacer un implode en ASP

Hola

El equivalente es la funcion Join()

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 05/01/2010, 09:35
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Como hacer un implode en ASP

Cita:
Iniciado por Adler Ver Mensaje
Hola

El equivalente es la funcion Join()

Suerte
Gracias Adler,

No entiendo la linea b=Filter(a,"n")

Código ASP:
Ver original
  1. Dim a(5),b
  2. a(0)="Saturday"
  3. a(1)="Sunday"
  4. a(2)="Monday"
  5. a(3)="Tuesday"
  6. a(4)="Wednesday"
  7. b=Filter(a,"n")
  8. document.write(join(b,", "))

No puedo dejar simplemente esto?

document.write(join(SolucionadasArray,", "))

Muchas gracias de antemano!
  #4 (permalink)  
Antiguo 05/01/2010, 09:42
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Como hacer un implode en ASP

Lo he probado así y me sale una coma de más al principio :S

Código ASP:
Ver original
  1. Response.Write(join(SolucionadasArray,","))

,106,98,122,107,91,72,113,128,121,111,96,68

Código ASP:
Ver original
  1. Response.Write("[")
  2. For Each item In SolucionadasArray
  3.     Response.Write(item & ",")
  4. Next
  5. Response.Write("]")
[,106,98,122,107,91,72,113,128,121,111,96,68,]

No entiendo de donde aparece la coma del principio, aqui es cuando relleno el array

Código ASP:
Ver original
  1. DO while cont <= 12
  2.     Set rs = Server.CreateObject("ADODB.Recordset")
  3.     SQL = "SELECT solucionada_per AS id_empleado, COUNT(*) AS cerradas FROM NSG_INCIDENCIES_CLIENT WHERE (MONTH(data_incidencia) = "& cont &") AND (YEAR(data_incidencia) = 2009) AND (solucionada_per = 12793) GROUP BY solucionada_per"
  4.     rs.open SQL, conn
  5.     SolucionadasArray(cont) = rs("cerradas")
  6.     cont = cont + 1
  7. LOOP

Gracias de antemano
  #5 (permalink)  
Antiguo 05/01/2010, 13:24
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Como hacer un implode en ASP

Hola

¿Es posible que cont esté empezando en 1 en vez de en 0?
Prueba así

Código ASP:
Ver original
  1. Dim cont
  2. cont = 0
  3. DO while cont < 12
  4.     Set rs = Server.CreateObject("ADODB.Recordset")
  5.     SQL = "SELECT solucionada_per AS id_empleado, COUNT(*) AS cerradas FROM NSG_INCIDENCIES_CLIENT WHERE (MONTH(data_incidencia) = "& cont &") AND (YEAR(data_incidencia) = 2009) AND (solucionada_per = 12793) GROUP BY solucionada_per"
  6.     rs.open SQL, conn
  7.     SolucionadasArray(cont) = rs("cerradas")
  8.     cont = cont + 1
  9. LOOP

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #6 (permalink)  
Antiguo 05/01/2010, 13:27
 
Fecha de Ingreso: octubre-2009
Mensajes: 97
Antigüedad: 14 años, 6 meses
Puntos: 4
Respuesta: Como hacer un implode en ASP

Código ASP:
Ver original
  1. <&#37;
  2. cadena="["
  3. For Each item In SolucionadasArray
  4.     cadena=cadena&item&","
  5. Next
  6. cadena=left(cadena,len(cadena)-1)
  7. cadena=cadena&"]"
  8. Response.Write(cadena)
  9. %>

Suerte.

Etiquetas: asp, implode
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 20:49.