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

Imagenes en base de datos segun id

Estas en el tema de Imagenes en base de datos segun id en el foro de ASP Clásico en Foros del Web. Alguno tiene un ejemplo de como hacer para mostar imagenes desde una base de datos segun el id ??? he visto este ejemplo http://www.asptutor.com/asp/vart.asp?id=54 Pero ...
  #1 (permalink)  
Antiguo 12/12/2005, 07:28
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
Imagenes en base de datos segun id

Alguno tiene un ejemplo de como hacer para mostar imagenes desde una base de datos segun el id ???

he visto este ejemplo

http://www.asptutor.com/asp/vart.asp?id=54

Pero no lo entendi ya que yo no uso el campo "imagen en formato binario" ya que solo pongo la url de la imagen , tendran algun otro ejemplo ????

Muchas gracias a quien me pueda ayudar
  #2 (permalink)  
Antiguo 12/12/2005, 10:41
Avatar de Jonatatan  
Fecha de Ingreso: octubre-2004
Ubicación: Italia, Gubbio (PG)
Mensajes: 147
Antigüedad: 19 años, 7 meses
Puntos: 0
Bueno el ejemplo del link es para poder visualizar imagenes contenidas en la BD en formato Binario, yo publique ese codigo hace tiempo creo, de como convertir una imagen en datos binarios subirlas a la BD y despues poderla mostrar como imagen, de todas maneras si alguien lo necesita lo puedo dar.

Lo que entendi de tu duda es que tienes almacenados los url en tu tabla imagenes, y dependiendo del id mostrarlas.

Ahora te tengo que preguntar dependiendo de que ID quieres mostrar las imaganes???? x q se me vienen a la cabeza varios casos, ejem:

quieres mostrarlas en forma aleatoria dependiendo del id de la imagen?
quieres mostrar una imagen dependiendo del id del usuario o de alguna otra varible?
....
solamente deberias condicionarlas en el query la condicion que quieras, de todas maneras exactamente quieres hacer, para ver en que te ayudamos

salu2 ciao ciao
__________________

Solo mi fido del tempo, le parole ed i fatti per prendere le decisioni più importanti della mia vita. // Solo confio en el tiempo, las palabras y los hechos para tomar las decisiones mas importantes de mi vida.
Jonatan Lavado
  #3 (permalink)  
Antiguo 12/12/2005, 10:46
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
gracias por la ayuda , mira lo que quiero hacer es lo siguiente , mostrar la imagen segun cada id de cada comercio , es decir un comercio de publica en xxxx categoria cada comercio puede publicar 4 fotos , bueno yo quiero mostrar 4 imagenes de aucerdo al id del comercio , es decir si cambio a otro comercio me va mostrar la imagen de ese otro comercio y asi sucesivamente , como te dije yo trabajo con enlaces dentro de la tabla,

desde ya muchas gracias
  #4 (permalink)  
Antiguo 12/12/2005, 10:48
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 18 años, 7 meses
Puntos: 3
Algo asi.... este trozo de codigo solo muestra lo que quieres ya que no puse la tabla completa.... espero te sirva
<%
dim id
id = request("id")
.........
%>
<td height="150" width="30%" align=center>
<% dim foto
foto = "/fotos/" & id & ".jpg"
%>
<img src="<%=foto%>">
</td>
  #5 (permalink)  
Antiguo 12/12/2005, 10:52
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
pero disculpame cual seria la sentencia de la consulta sql ???'
  #6 (permalink)  
Antiguo 12/12/2005, 11:00
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 18 años, 7 meses
Puntos: 3
En realidad no te habia entendido bien..... lo que te pasé sirve para fotos que estan en disco no en base de datos, que tienen el mismo identificador que lo que se guarda en la base.
Para ayudarte mas necesito tu tabla o tus tablas con los nombres de columnas para hacerte la query....
  #7 (permalink)  
Antiguo 12/12/2005, 11:03
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 18 años, 7 meses
Puntos: 3
Para que quieres poner los links para desplegar las imagenes si se pueden desplegar al momento de seleccionar tu comercio ?..... todavia no tengo claro que quieres
  #8 (permalink)  
Antiguo 12/12/2005, 11:07
Avatar de Jonatatan  
Fecha de Ingreso: octubre-2004
Ubicación: Italia, Gubbio (PG)
Mensajes: 147
Antigüedad: 19 años, 7 meses
Puntos: 0
bueno en la tabla imagen debes tener de alguna forma relacion con la tabla comercio, es decir para cada imagen le tienes asignado el id del comercio al cual corresponde??? si es asi deberias colocar algo como esto:

Código:
Mostrarimagn.asp

idcom = request.querystring("idcom") 
'debes recoger el id del comercio seleccionado en la pagina precedente

Set oConn = Server.CreateObject("ADODB.Connection") 
oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("imagen.mdb")&";"
'conectas tu bd en st caso como ejemplo una de access
selecimag = "select [i].[url] as url from tablaimagen i where [i].[idcomercio]="&idcom
set imagns = oConn.Excute(selecimag)
'haces tu query seleccionando las imagenes correpondientes al comercio preseleccionado

while not imagns.eof %>   'haga mientras la seleccion contenga informacion 
     <img src="<%=imagns("url")%>"> 'Muestras la imagen deberias dar un formato standard para las 4 imagenes
     <%imagns.movenext   'te mueves a la proxima imagen
wend%>    'finalizas el ciclo
Espero que te sirva y que sea lo que necesites, sino es asi igual seguiremos aqui, ciao ciao
__________________

Solo mi fido del tempo, le parole ed i fatti per prendere le decisioni più importanti della mia vita. // Solo confio en el tiempo, las palabras y los hechos para tomar las decisiones mas importantes de mi vida.
Jonatan Lavado
  #9 (permalink)  
Antiguo 12/12/2005, 12:12
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
gracias amigo por la ayuda luego lo pruebo y te digo .

Muchisimas gracias y si no te hablo que tengas una FELIZ NAVIDAD
  #10 (permalink)  
Antiguo 12/12/2005, 12:16
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
Una pregunta

que es la i de

selecimag = "select [i].[url] as url from tablaimagen i where [i].[idcomercio]="&idcom
set imagns = oConn.Excute(selecimag)

que esta entre corchetes ?
  #11 (permalink)  
Antiguo 12/12/2005, 16:00
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
YO ESTOY UTILIZANDO ALGO ASI

Ahora .. como hago para que me lo muestre por por id ?

<%
dim oConn, RS
'Creamos los objectos a usar.
Set oConn = Server.CreateObject ("ADODB.Connection")
Set RS = Server.CreateObject ("ADODB.RecordSet")
'Conectamos a la conexion a la base de datos.
oConn.Open StrConn
sql = "SELECT * FROM imagenes"
'Abrimos la tabla pidiendo todos sus registros.
RS.Open sql, oConn
Do While not RS.EOF
'Mostramos el nombre del articulo.
Response.Write RS("articulo") & " - "
'Ahora el path de la imagen.
Response.Write RS("imagen") & " - "
'Y la siguiente linea muestra la imagen.
Response.Write "<IMG SRC="""&RS("imagen")&""">"
Response.Write "<BR>"
RS.MoveNext
Loop
'Cerramos y eliminamos todo.
RS.Close
oConn.Close
Set RS = Nothing
Set oConn = Nothing
%>
  #12 (permalink)  
Antiguo 12/12/2005, 17:50
Avatar de tomchat  
Fecha de Ingreso: septiembre-2005
Mensajes: 231
Antigüedad: 18 años, 9 meses
Puntos: 0
SOlamente puedes hacer la siguiente consulta.

SELECT * FROM images WHERE idcomercio='"idcomercio"'

Siendo images tu tabla imagenes, con un campo idcomercio para tener relacin con la tabla comercio de tales empresa. y porsupuesto idcomercio con la id correspondiente al registro que deseas mostrar sus fotos.

Espero te sirva.
  #13 (permalink)  
Antiguo 12/12/2005, 19:32
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
<%
Set oConn = Server.CreateObject ("ADODB.Connection")
Set RS = Server.CreateObject ("ADODB.RecordSet")
oConn.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("data/dir.mdb")

'Conectamos a la conexion a la base de datos.
SQL = "SELECT * FROM LINKS WHERE LINK_ID = '" & "LINK_ID" & "'"

%>


<font color="#000000" size="-1" face="Arial, Helvetica, sans-serif">
<%Response.Write "<IMG SRC="""&RS("imagen1")&""">" %>
</font> </p>
</div>

El link_id es el que condiciona a las imagenes ahi puse una sola imagen1 pero la tabla tiene 4 imagenes x negocio

y este es el error que me da


ADODB.Recordset error '800a0cc1'

No se encontró el elemento en la colección que corresponde con el nombre o el ordinal pedido.

/line 227
  #14 (permalink)  
Antiguo 12/12/2005, 20:04
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
le agregado la setencia sql para que me habra todos los datos

<%RS.Open sql, oConn %>

y me sale este error


Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

POR FAVOR NECESITO AYUDA ES MUY URGENTE GRACIASSSS A TODOS
  #15 (permalink)  
Antiguo 13/12/2005, 01:53
Avatar de Jonatatan  
Fecha de Ingreso: octubre-2004
Ubicación: Italia, Gubbio (PG)
Mensajes: 147
Antigüedad: 19 años, 7 meses
Puntos: 0
bueno la i es solo un metodo de abreviamento que uso y que permiten las sentencias sql, es solo una tonteria mia pero me gusta usarlo, de resto agrega a tu codigo esto:

Tu query, como se llama el campo q t contiene el link?
SQL = "SELECT * FROM LINKS WHERE LINK_ID ='"&LINK_ID&"' "
Agrega esto para ejecutar el query:
set RS = oConn.Excute(SQL)

Luego para mostrar tus 4 imagenes que ya stan contenidas en el Query ejecutada mediante RS debes realizar el ciclo q te mostre arriba y seria como sigue:

<%while not RS.eof%>
<font color="#000000" size="-1" face="Arial, Helvetica, sans-serif">
<IMG SRC="<%Response.Write(RS("imagen1"))%>">
stas seguro q en imagen1 es el nombre de la columna que contiene el link o url en tu tabla links?
</font>
<%rs.movenext
<%wend


Haciendo este ciclo y mostrando la imagen en ste caso debes imprimir en el Response.write la columna que contiene tu url de la tabla links, ok espero q te sirva, ciao ciao salu2
__________________

Solo mi fido del tempo, le parole ed i fatti per prendere le decisioni più importanti della mia vita. // Solo confio en el tiempo, las palabras y los hechos para tomar las decisiones mas importantes de mi vida.
Jonatan Lavado
  #16 (permalink)  
Antiguo 13/12/2005, 10:46
Avatar de tomchat  
Fecha de Ingreso: septiembre-2005
Mensajes: 231
Antigüedad: 18 años, 9 meses
Puntos: 0
[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

eso significa que el nombre del campo de la consulta no existe en la tabla,.
  #17 (permalink)  
Antiguo 13/12/2005, 17:15
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 21 años, 10 meses
Puntos: 0
He probado lo que me dijeron y sin embargo sigo con error

<%
Set oConn = Server.CreateObject ("ADODB.Connection")
Set RS = Server.CreateObject ("ADODB.RecordSet")
oConn.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("galaxia/dir.mdb")
ID = Request.querystring("LINK_ID")
If Len(ID) < 1 Then
ID = 1
End If

'Conectamos a la conexion a la base de datos.
SQL = "SELECT * FROM LINKS WHERE LINK_ID ='"&ID&"' "

RS.Open sql, oConn



while not RS.eof%>
<table width="410" border="0">
<tr>
<td width="186"><div align="center"><font color="#000000" size="-1" face="Arial, Helvetica, sans-serif"><img src="<%Response.Write(RS("imagen1"))%>">
</font></div></td>
<td width="214"><div align="center"><font color="#000000" size="-1" face="Arial, Helvetica, sans-serif"><img src="<%Response.Write(RS("imagen2"))%>">
</font></div></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td><div align="center"><font color="#000000" size="-1" face="Arial, Helvetica, sans-serif"><img src="<%Response.Write(RS("imagen3"))%>">
</font></div></td>
<td><div align="center"><font color="#000000" size="-1" face="Arial, Helvetica, sans-serif"><img src="<%Response.Write(RS("imagen4"))%>">
</font></div></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
<br>
</div>
</div>
<p>

<font color="#000000" size="-1" face="Arial, Helvetica, sans-serif">
<%rs.movenext
wend
%>
</font> </p>
</div>

Le he agregado una setencia para que me recupere el link_id y que lo compare

He visto otra vez los datos en la tabla y si existen los campos que nombro

LINK_ID
LINKS COMO NOMBRE DE TABLA
imagen1
imagen2
imagen3
imagen4

Asi y todo me sale

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

/ line 200

la linea 200 es

RS.Open sql, oConn

Gracias a quien me pueda ayudar
  #18 (permalink)  
Antiguo 13/12/2005, 18:20
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Hola Hugo, trata esta sentencia, seguramente tu campo ID es numerico

'Conectamos a la conexion a la base de datos.
SQL = "SELECT * FROM LINKS WHERE LINK_ID ="&ID

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #19 (permalink)  
Antiguo 14/12/2005, 02:19
Avatar de Jonatatan  
Fecha de Ingreso: octubre-2004
Ubicación: Italia, Gubbio (PG)
Mensajes: 147
Antigüedad: 19 años, 7 meses
Puntos: 0
es cierto lo q te dice u_goldman lo mas probable es que tu ID seanumerico y con la sentencia q muestras hace q parezca alfanumerico, por eso el error. sigue probando y avisa... ciao ciao
__________________

Solo mi fido del tempo, le parole ed i fatti per prendere le decisioni più importanti della mia vita. // Solo confio en el tiempo, las palabras y los hechos para tomar las decisiones mas importantes de mi vida.
Jonatan Lavado
  #20 (permalink)  
Antiguo 14/12/2005, 02:31
Avatar de Jonatatan  
Fecha de Ingreso: octubre-2004
Ubicación: Italia, Gubbio (PG)
Mensajes: 147
Antigüedad: 19 años, 7 meses
Puntos: 0
otra cosa.... mejor una pregunta, imagen1, imagen2, imagen3 e imagen4 son columnas de tu tabla??? porque si es asi deberias quitar estas tres lineas del codigo:

while not rs.eof
rs.movenext
wend


Yo te lo habia recomendado porque pense q la tabla tenia otra estructura ejemplo:

IDcomercio | urlimagen
1 | http://.../images/foto1.jg
1 | http://.../frente.jpg
1 | http://.../images/foto2.jg
1 | http://.../images/foto3.jpg
2 | http://.../images/foto4.jg
2 | http://.../images/frente2.jpg
2 | http://.../images/comer.jg
2 | http://.../images/estaciona.jpg

pero si tu tabla tiene esta otra estructura

IDComercio | imagen1 | imagen 2 | imagen3 | imagen4
1 | http://.... | http://.... | http://.... | http://....
2 | http://.... | http://.... | http://.... | http://....

no tienes necesidad de crear el ciclo por q contiens todos los datos dentro d una linea, espero q hayas comprendido la diferencia, salu2 bye..
__________________

Solo mi fido del tempo, le parole ed i fatti per prendere le decisioni più importanti della mia vita. // Solo confio en el tiempo, las palabras y los hechos para tomar las decisiones mas importantes de mi vida.
Jonatan Lavado
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 23:17.