<%
n=10
For i=0 to n%>
<%=i%>
<%Next%>
¿Podria crear dinamicamente variables para asignarles los valores de i?

| |||
Podrias generar un array dinamicamente y a cada indice le asignas el valor de i, no se si es esto lo que buscas, pero sería algo así: Dim arreglo(10) For i=0 to UBound(arreglo) arreglo(i) = i next |
| ||||
Humm... Tal vez lo que te pasa es que quieres tener guardados todos los valores que generas y no sabes como hacerlo?? bueno, algo podria ser como: Dim arrVar 'CODIGO 'CODIGO 'CODIGO n=10 Redim arrVar(n) For i=0 to n arrVar(i) = i Response.write i Next %> Ese seria un metodo, si eso es lo que pretendes. ![]() |
| ||||
![]() Cita:
Iniciado por sqa212 De esta forma imprimo los distintos valores de i: <% n=10 For i=0 to n%> <%=i%> <%Next%> ¿Podria crear dinamicamente variables para asignarles los valores de i? ![]() Checad esto ustedes deben:
Código:
for x = 0 to 10 execute("variable_" & x & " = " & x) next response.write variable_0 & "<br/>" response.write variable_1 & "<br/>" response.write variable_2 & "<br/>" response.write variable_3 & "<br/>" response.write variable_4 & "<br/>" response.write variable_5 & "<br/>" response.write variable_6 & "<br/>" response.write variable_7 & "<br/>" response.write variable_8 & "<br/>" response.write variable_9 & "<br/>" ejem,ejem,ejem ![]() |
| |||
u_goldman, aunque quizas te rias de mi llege incluso a probar lo que sugeristes: For i = 0 to x Dim "var"&i Next Queria hacer exactamente lo que decia mariano_donati generar un array dinamicamente, junto con lo que me sugeririo Neuron_376, usar Redim arrVar(n). No puse todo el codigo porque intente delimitar el problema, pero parece que he habido una especie de telepatia cibernetica o algo asi, porque casi averiguais todo sin deciros practicamente nada. Muzztein, acabo de ver tu mensaje, luego te comento cuando lo pruebe. Os comento lo que pretendo: Hay dos archivos: tablasenbd.asp y recogedebd.asp tablasenbd.asp muestra todas las tablas y campos de la base de datos,confecionando con dichos valores un formulario en el que se puede seleccionar las tablas y campos que van a enviarse a recogedebd.asp. recogedebd.asp El objetivo de este archivo es crear una matrix bidimensional,la primera dimension estara formada por las columnas de la base de datos que intervienen y la segunda dimension estara formada por las tablas de la base de datos que intervienen. Por lo que pienso que deeberia ser matrixbidimensional(tablas que intervienen -1, Numero maximo de columnas que intervienen de una misma tabla -1) Como dijo u_goldman, Niños, no imiten esto. Una vez creada la matrixbidimensional, se introducirian en ella sus valores correspondientes. Finalmente una vez que consiga lo anterior lo que pretendo es generar "EL CODIGO" necesario para crear "LA SINTEXIS" de formularios,"LA SINTEXIS" de consultas SQl (tanto de Select como de update cuando solo se ha selecionado una tabla), "LA SINTEXIS" de consultas SQl (de Select cuando se selecionen dos tablas con un campo en comun) tipo: set rscoleccion=db.Execute("SELECT * FROM colecciones INNER JOIN objetos ON colecciones.idobjeto = objetos.idobjeto"), etc,etc,etc Aunque creo que necesitaria una matriz de mas de dos dimensiones, si pasase tambien el tipo de dato de que se trata junto al campo. Como podreis ver si ejecutais el codigo, ahora mismo no estoy demasiado lejos de crear la matrixbidimensional. A ver si se os ocurre como deberia enfocarse correctamente el asunto,os invito a que os rompais el coco un poco para ver si esto echa a andar, creo que podria resultar de gran utilidad para todos. ------------------------------------tablasenbd.asp------------------------------------------------- <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <!-- #INCLUDE File="adovbs.inc" --> <%Function tipocampobd(strText) Select Case LCase(strText) Case "" strTemp = "VACIO" Case "3" strTemp = "Número" Case "202" strTemp = "Texto" Case "203" strTemp = "Memo" Case else strTemp = "DESCONOCIDO" End Select tipocampobd = strTemp End function%> <%Dim oConn,rstSchema Set oConn = Server.CreateObject("ADODB.Connection") Set rstSchema = Server.createobject("ADODB.Recordset") oConn.Open ("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("basededatos.mdb")) Set rstSchema = oConn.OpenSchema(adSchemaTables) %> <html> <head></head> <body> <form method="post" action="recogedebd.asp"> <table> <% Do Until rstSchema.EOF%> <%Nombretablas= rstSchema("TABLE_NAME")%> <%Tipotabla= rstSchema("TABLE_TYPE")%> <%if Tipotabla="TABLE" then%> <b><%=Nombretablas%>:</b> <input type="checkbox" name="Nombretablas" value="<%=Nombretablas%>"> <hr color="#FF0000" width="600"><br> <% set rscat=oConn.execute("select * from [" & Nombretablas& "]")%> <%For Each campo in rscat.Fields%> <input type="checkbox" name="<%= Nombretablas& "|" & campo.Name%>" value="<%= campo.Name%>"> <%miscampos=campo.Name%> <B><%=miscampos%></B> <B style="color:#FF0000"><%=tipocampobd(campo.Type) %></B> <BR> <%next%> <br> <%end if%> <% rstSchema.MoveNext Loop rstSchema.Close oConn.Close %> <input type="submit"> </form> </body> </html> ------------------------------------recogedebd.asp------------------------------------------------- <%@ LANGUAGE="VBSCRIPT" %> <% Function cogenombrecol(txt,deqtabla) tamatodo=LEN(txt) tamatabla=LEN(deqtabla) tamacol=tamatodo-tamatabla txt = Mid(txt,tamatabla+2,tamacol) nombrecol = txt Response.write "<hr><br><FONT color=green><b>" & nombrecol & "</b></FONT>" End function %> <% Dim cosa Dim cuantosvienen 'MiMatrix1 Se asigna un valor a un elemento dentro de la matrix MiMatrix1 en el que almacena el nombre de una tabla. 'MiMatrix2 Se asigna un valor a un elemento dentro de la matrix MiMatrix2 en el que almacena TABLA|COLUMNA. Dim MiMatrix1 Dim MiMatrix2(100) delform="" cuantosvienen=Request.Form.count Redim MiMatrix1(cuantosvienen) FOR EACH cosa IN Request.Form delform=delform & cosa & "," Response.Write "<hr><br><FONT color=red>" + cosa + "</FONT> = " + Request.Form(cosa) Next Response.Write "<H2><FONT color=brown>" & cuantosvienen & "</H2>" Response.Write "<hr>" tamano=Len(delform)-1 delform=Left(delform,tamano) idTablas=Split(Request.Form("Nombretablas"),",") For i=0 to UBound(idTablas) Response.Write (i) Response.Write idTablas(i)& "<BR>" MiMatrix1(i)=idTablas(i) Response.write "<br><FONT color=orange>" & MiMatrix1(i) & "<br><br></FONT>" Next delform=Replace (delform, "Nombretablas,","") id=Split(delform,",") For i=0 to UBound(id)-1 MiMatrix2(i)=id(i) Response.write "<br><FONT color=blue>" & MiMatrix2(i) & "</FONT>" Response.Write "<b>" & cogenombrecol(MiMatrix2(i),MiMatrix1(0)) & "</b>" Response.Write "<BR>" Next %> |
| |||
Ayuda Experto Por mas vueltas que le doy no veo la forma correcta de introducir los datos en lugar de en las dos matricez, en una matriz bidimensional. ![]() Aun mas dificil todavia obtener una matriz tridimensional que recoja tambien el tipo de dato de que se trata. ![]() A ver si alguno de los exspertos que hay en este foro me hecha una manita. ![]() |
| ||||
Hola! Mira, para la parte del arreglo que viene de la consulta, investiga el metodo GetRows, encontraras un ejemplo muy rapido de ese metodo y lo que necesitas para aplicarlo, ese metodo te creara un arreglo con todos tus resultados de la consulta a la base de datos. El arreglo que tienes que llega por POST, ese dejalo fuera y solamente recorrelo por separado cuando lo necesites. ![]() |