saludos.-
alguna funcion como split en ASP que me ayude atrabajar con numeros en lugar de cadenas??
tendran algunos ejemplos? gracias
| |||
split en asp saludos.- alguna funcion como split en ASP que me ayude atrabajar con numeros en lugar de cadenas?? tendran algunos ejemplos? gracias Última edición por kevinal; 31/03/2004 a las 09:21 |
| |||
Aprovecho este mensaje para hacer otra pregunta sobre split. Tengo varios registros y cada registro tiene una cadena, entoces yo lo que quiero es cortar todas las cadenas por un determinado caracter pj: el ; y almacenar todas las cadenas que obtengo en una variable. Podriais Orientarme un poco con algun codigo de ejemplo o algo parecido. Gracias ![]() |
| ||||
Más o menos así: cadena = "" While Not rs.EOF cadena = cadena & rs("campo") & ";" rs.MoveNext Wend Al final del ciclo, tendrás una cadena con todo lo que te haya arrojado tu rs, separada por ";", si necesitas después procesarlo, pues entonces si, puedes crear un arreglo, pero se me hace como que harías un paso de más, ya que podrías almacenar el contenido de ese campo en un arreglo dinámico desde el mismo while... Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| |||
Me temo que esta solucion no me vale pues asi no sabria el registro del cual procede cada cadena. y necesito saberlo. Pues cada cadena es un nombre de una imagen, y en un registro puede haber varias imagenes. E implementado como un visor de imagenes de cada registro, poongo el codigo aqui: <%tipo=request.querystring("tipo") dir="../public/"+tipo+"/" Set con = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.Recordset") con.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/mdb-database/propiedad.mdb")) 'Ejecuta un sentencia SQL de consulta sql = "SELECT * FROM "+tipo+"" Set result = con.Execute(sql) 'Recorre todas las filas del resultado Do While Not result.EOF ruta=result("ruta") if ruta<>"" then e=e+1 arreglo=split(ruta,";") if e=1 then response.write "<table cellpadding='2' border=0 cellspacing='2' class='general'><tr>" end if if a=3 then response.write "</tr><tr>" a=0 end if response.write "<td valign='top' align='center'><table style='border: 1 solid #000000' class='general'><tr><td bgcolor=#003399 colspan=2><font class='property'>• "&result.fields("propiedad")&"</font></td></tr><tr><td>"%><a onClick="afoto('<%=dir&arreglo(0)%>','Model <%=result.fields("propiedad")%>');return false" style='cursor:hand'><%response.write "<img src='"&dir&arreglo(0)&"' name='imag2' width='140'></a></td></tr>" %> <script> i=0 dir2="<%=dir&arreglo(0)%>" function pasaimagen<%=e%>(a){ i=i+1 if (i==a+1){i=0;} if (i==-1) {i=a;} <% for j=lbound(arreglo) to ubound(arreglo)-1 %> if (i==<%=j%>) { imag2.src="<%=dir&arreglo(j)%>" dir2="<%=dir&arreglo(j)%>" n=i+1 } <%next%> } </script> <% if ubound(arreglo)>1 then %> <table> <tr> <td align="center" > <p align="center" class="f"> <a href="javascript:pasaimagen<%=e%>(<%=ubound(arregl o)-1%>);" class="f"><<< Previous</a> <a href="javascript:pasaimagen<%=e%>(<%=ubound(arregl o)-1%>);" class="f">Next >>></a> <% end if else response.write "<CENTER><BR>FOTO <BR>NO<BR> DISPONIBLE<CENTER>" end if%> </td> </tr> </table> <% a=a+1 result.MoveNext Loop 'Libera memoria result.Close Set result = Nothing con.Close Set con = Nothing El problema esta en que en cada registro existen tres imagenes, y yo solamente puedo ver la primera de cada registro, no me funcionan las opciones para pasar a la siguiente imagen. Espero me haya explicado Última edición por jpalbox; 09/04/2004 a las 06:19 |
| |||
Deberías intentar directamente contra la base de datos, haciendo un Store procedure que manipule todas las cadenas en un cursor que recorrerá todos los registros.
__________________ Pablo Robayo Última edición por pablorobayo; 01/04/2004 a las 16:55 |
| |||
ahi va la solucion <script language="javascript"> var ventana var cont=0 var titulopordefecto = " -----" //texto por defecto a mostrar en la barra de título en caso de omitir el argumento titulo var redir="'contact.asp'" function afoto(cual,titulo) { if(cont==1){ventana.close();ventana=null} if(titulo==null){titulo=titulopordefecto} ventana=window.open('','ventana','resizable=yes,sc rollbars=no,width=10,height=10') ventana.document.write('<html><head><link href="../estiloss.css" rel="stylesheet"><title>' + titulo + '</title>') ventana.document.write('</head><body style="overflow:hidden" marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" scroll="no" onUnload="opener.cont=0" bgcolor="#3366FF" text="#FFFFFF"><center class="b"> <a href="javascript:window.print()" class="b">Print photo</a> | <a href="javascript:window.close();window.opener.loca tion.replace('+ redir +');" class="b" style="cursor:hand">Contact us</a> | <a href="javascript:window.close()" class="b">Close window</a><br><br><center><img src="' + cual + '" onLoad="opener.redimensionar(this.width, this.height)">') ventana.document.close() cont++ } function redimensionar(ancho,alto) { ventana.resizeTo(ancho+12,alto+60) ventana.moveTo((screen.width-ancho)/2,(screen.height-alto*1,5)/2) //centra la ventana. Eliminar si no se quiere centrar el popup } </script> </head> <%tipo=request.querystring("tipo") dir="../public/"+tipo+"/" 'Abre la conexion con la base de datos a traves de una conexion ODBC Set con = Server.CreateObject("ADODB.Connection") 'Como vamos a utilizar la variable rs del tipo recordset para recorrer los registros con EOF Set rs = Server.CreateObject("ADODB.Recordset") con.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/mdb-database/propiedad.mdb")) 'Ejecuta un sentencia SQL de consulta sql = "SELECT * FROM "+tipo+"" rs.Open sql, con,3 'Recorre todas las filas del resultado Dim arreglo(99,99) Do While Not rs.EOF ruta=rs("ruta") if ruta<>"" then ele=split(ruta,";") totalele=ubound(ele) for ea=0 to totalele arreglo(e,ea)=ele(ea) next if e=0 then response.write "<table cellpadding='2' border=0 cellspacing='2' class='general'><tr>" end if if a=3 then response.write "</tr><tr>" a=0 end if response.write "<td valign='top' align='center'><table style='border: 1 solid #000000' class='general'><tr><td bgcolor=#003399 colspan=2><font class='property'>• "&rs.fields("propiedad")&"</font></td></tr><tr><td>"%><a onClick="afoto(dir2<%=e%>,'<%=rs.fields("propiedad ")%>');return false" style='cursor:hand'><%response.write "<img src='"&dir&arreglo(e,0)&"' name='imag"&e&"2' width='140'></a></td></tr>" %> <script> i<%=e%>=0 dir2<%=e%>="<%=dir&arreglo(e,0)%>" function pasaimagen<%=e%>(a,b){ i<%=e%>=i<%=e%>+b if (i<%=e%>==a+1){i<%=e%>=0;} if (i<%=e%>==-1) {i<%=e%>=a;} <% for j=lbound(ele) to ubound(ele)-1 %> if (i<%=e%>==<%=j%>) { imag<%=e%>2.src="<%=dir&arreglo(e,j)%>" dir2<%=e%>="<%=dir&arreglo(e,j)%>" n<%=e%>=i<%=e%>+1 } <%next%> } </script> <% if ubound(ele)>1 then %> </a> <table> <tr> <td align="center" > <p align="center" class="f"> <a href="javascript:pasaimagen<%=e%>(<%=ubound(ele)-1%>,-1);" class="f"> <img border="0" src="../images/previous.gif" align="absmiddle"> Previous</a> <a href="javascript:pasaimagen<%=e%>(<%=ubound(ele)-1%>,1);" class="f">Next <img border="0" src="../images/next.gif" align="absmiddle"></a> <% end if else if e=0 then response.write "<table cellpadding='2' border=0 cellspacing='2' class='general'><tr>" end if if a=3 then response.write "</tr><tr>" a=0 end if response.write "<td valign='top' align='center'><table style='border: 1 solid #000000' class='general'><tr><td bgcolor=#003399 colspan=2><font class='property'>• "&rs.fields("propiedad")&"</font></td></tr><tr><td class='f' width='140'><center><BR>PHOTO<BR>NO<BR>AVAILABLE<B R><BR></CENTER></td></tr>" end if%> </td> </tr> </table> <% a=a+1 e=e+1 Set ele = Nothing rs.MoveNext Loop 'Libera memoria rs.Close Set rs = Nothing con.Close Set con = Nothing Última edición por jpalbox; 27/04/2004 a las 04:14 |