Principales respuestas
Variables dinamicas desde execute ASP

Pregunta
-
Hola a todos, tengo una pregunta resuelta a medias, resulta que estoy tratando de crear variables dinamicas con valores tipo varchar dentro de un ciclo for con, el problema que estoy teniendo hasta el momento es que creo que el comando execute solo crea variables con valores igualados a numereos o tipo int dejo el codigo.
Dim SQL SQL = "SELECT PHONE FROM TBLPHONECOMPANY WHERE COMPANY = 'LG' " rsRead(SQL) If Not rs.EOF then sqlresults = rs.GetRows() iRows = Ubound(sqlresults, 2) go = True else sqlresults = 0 go = False End IF If go = True then For x = 0 to (iRows - 1) i = x + 1 Execute ("Variable" & i & "=" & sqlresults(0,x) Next Response.Redirect "prinvariable.asp?Variable1="&Variable1&"&Variablen="&Variablen&"" else Response.Redirect "prinvariable.asp?msg=No existe" End Fi
Hasta lo que se la sintasis esta bien el problema es un error que tengo que me lanza mi web a la hora de hacer la ejecucion "Execute" de las variables, el error: " Expected end of statement " ya he buscado como loco pero no encuentro una solucion espero que alguien de ustedes en sus experiencias tengan algo de antemano gracias por su tiempo.
- Cambiado Leandro TuttiniMVP martes, 5 de febrero de 2013 19:23
Respuestas
-
- Fíjate que falta paréntesis de cierre en esa instrucción.
- Luego de usar getrows, ya puedes cerrar el recordset.Si no vas a usar la conexión mas abajo, también ciérrala
- segundo, puedes intentar:
For x = 0 to (iRows - 1) i = x + 1
Response.Redirect "prinvariable.asp?Variable1="&sqlresults(0,x)&"&Variablen="&Variablen&"<br>" Next
Menos lineas,menos consumo de recursos.
Pregunto: ¿por que redirect?Imagino que lo que deseas es crear hipervícunlos.
response.write ("<a href=""prinvariable.asp?Variable1="& sqlresults(0,x) & " target=""_blank"">"& sqlresults(0,x) & "</a>")
OJO: escrito aquí al pelo!!!
- Editado guarracuco miércoles, 6 de febrero de 2013 15:42
- Marcado como respuesta Monttanna miércoles, 10 de abril de 2013 19:57
Todas las respuestas
-
-
- Fíjate que falta paréntesis de cierre en esa instrucción.
- Luego de usar getrows, ya puedes cerrar el recordset.Si no vas a usar la conexión mas abajo, también ciérrala
- segundo, puedes intentar:
For x = 0 to (iRows - 1) i = x + 1
Response.Redirect "prinvariable.asp?Variable1="&sqlresults(0,x)&"&Variablen="&Variablen&"<br>" Next
Menos lineas,menos consumo de recursos.
Pregunto: ¿por que redirect?Imagino que lo que deseas es crear hipervícunlos.
response.write ("<a href=""prinvariable.asp?Variable1="& sqlresults(0,x) & " target=""_blank"">"& sqlresults(0,x) & "</a>")
OJO: escrito aquí al pelo!!!
- Editado guarracuco miércoles, 6 de febrero de 2013 15:42
- Marcado como respuesta Monttanna miércoles, 10 de abril de 2013 19:57
-
Guarracuco, gracias por tu respuesta, por que redirect no deseo crar inpervinculos esto es para mandar la variables de una aplicacion web a otra totalmente diferente una esta en asp y otra en php.
Dejo a fueraeste redireccionamiento por que primero necesito crear x variables y posteriormente mandarcela a ala aplicacion de php, el problema que tengo es con el execute que como ya dije tiene problema al dar valores a la variables que no sean numeros.
-
-
-
Este tema me mantuvo muchas horas meditando sobre el lenguaje. La solución, me surgió pensando en la utilidad macrosustitución de Visual Fox.
La sentencia es asi: execute("NombreVariable" & "=" & x & "miVar")
Donde, x es un numero...es decir queremos guardar datos de cadena de caracteres en:
NombreVariable1, NombreVariable2...etc...
Y en miVar
For x = 0 to 10
miVar="aqui contenido de texto que quieras"
execute("NombreVariable" & "=" & x & "miVar")Next
Esto guardará en cada variable un contenido de cadena de caracteres. Parece descabellado porque contradice el "formato" standard, pero resulta.
No sé si llego tarde a la explicación y ya lo resolviste, pero tal vez le sea util a otros.