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

Error foto REPLACE

Estas en el tema de Error foto REPLACE en el foro de ASP Clásico en Foros del Web. Hola a todos Tengo problema porque se sale ERROR de Replace. Os indico con mas detalle 1º- http://www.motorpoint.com/newage/gui...mpracoches.asp 2º- Selecciona una marca y modelo. Ejemplo: ...
  #1 (permalink)  
Antiguo 19/09/2005, 06:22
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
Error foto REPLACE

Hola a todos

Tengo problema porque se sale ERROR de Replace. Os indico con mas detalle

1º- http://www.motorpoint.com/newage/gui...mpracoches.asp

2º- Selecciona una marca y modelo. Ejemplo: Audi A2. Y pulsa botón BUSCAR

3º- Aparecen las listas de modelo. Selecciona cualquier MODELO, ejemplo A” 1.4 TDI(75) y pinchalo….

4º- Y aparece error:
Microsoft VBScript runtime error '800a005e'
Invalid use of Null: 'Replace'
/newage/guiacomprador/pruebaguia.asp, line 221

El archive pruebaguia.asp, el error viene de "foto = Replace(foto, "jpg", "gif")"

Código HTML:
<table width="750" border="0" cellspacing="0" cellpadding="0">
<tr> 
<%
reg=request.querystring("regin")
Dim marca2 ' Declaro la variable
oConn.Open "DSN=motorpoint.com.nuevos2"
SQL="SELECT * FROM NUEVOS WHERE Id = "&reg&";"
rs.Open SQL, oConn
marca=rs.Fields("Marca")
fomo=rs.Fields("Modelo")
foto=rs.Fields("Fotos")
potencia1=rs.Fields("Potencia")
potencia2=rs.Fields("Potencia")
combusb=rs.Fields("Combustible")
tipob=rs.Fields("Tipo")
Session("Precio")=rs.Fields("Precio")
precio_ini=CLng(rs.Fields("Precio"))
precio_fin=CLng(rs.Fields("Precio"))
Session("Marca")=rs.Fields("Marca")
foto = Replace(foto, "jpg", "gif")
%>
<td width="350">
<div id="datos">             	
<table width="350" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="165" align="right">
<table width="165" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="85" align="left">
<div id="foto">
<%
foto=rs.fields("fotos")
for i=1 to foto 
if i<10 then
%>
<img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/0<%=i%>.jpg" border="0">
<%
end if 
next
%>
</div>
</td>
<td width="80">
<font size="2" color="#006666">
<strong>
<%=marca%>
</strong>
</font>
</td>
</tr>
</table>
</td>
<td width="10"></td>
<td width="175" align="left">
<font size="2" color="#006666">
<strong>
<em>
<%=rs.Fields("version")%>
</em>
</strong>
</font>
</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>PRECIO:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#FF0000" size="2">
						<strong>
						<%=rs.Fields("Precio")%>
						</strong>
						</font>
						<font size="2"><strong>€</strong></font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>TIPO:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<%
						xtipo= tipob
						if xtipo = "1" then
						xtipo = Replace (xtipo, "1", "Microcoches")
						end if 
						if xtipo = "2" then
						xtipo = Replace (xtipo, "2", "Urbanos")
						end if 
						if xtipo = "3" then
						xtipo = Replace (xtipo, "3", "Compactos")
						end if 
						if xtipo = "4" then
						xtipo = Replace (xtipo, "4", "Berlinas Familiares")
						end if 
						if xtipo = "5" then
						xtipo = Replace (xtipo, "5", "Berlinas Grandes")
						end if 
						if xtipo = "6" then
						xtipo = Replace (xtipo, "6", "Derlinas de Lujo")
						end if 
						if xtipo = "7" then
						xtipo = Replace (xtipo, "7", "Monovolumenes")
						end if 
						if xtipo = "8" then
						xtipo = Replace (xtipo, "8", "Coupes")
						end if 
						if xtipo = "9" then
						xtipo = Replace (xtipo, "9", "Descapotables")
						end if 
						if xtipo = "10" then
						xtipo = Replace (xtipo, "10", "Roadster")
						end if 
						if xtipo = "11" then
						xtipo = Replace (xtipo, "11", "Todoterrenos")
						end if 
						if xtipo = "12" then
						xtipo = Replace (xtipo, "12", "Pick Up")
						end if 
						if xtipo = "13" then
						xtipo = Replace (xtipo, "13", "Derivados")
						end if
						%>
						<font color="#333333" size="2">
						<strong>
						<%=xtipo%>
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>COMBUSTIBLE:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<%
						xtipo= combusb
						if xtipo = "G" then
						xtipo = Replace (xtipo, "G", "Gasolina")
						end if 
						if xtipo = "D" then
						xtipo = Replace (xtipo, "D", "Diesel")
						end if
						%>
						<font color="#333333" size="2">
						<strong>
						<%=xtipo%>
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>POTENCIA:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#333333" size="2">
						<strong>
						<%=rs.Fields("Potencia")%>
						</strong>
						</font>
						<font color="#000000">
						<strong>
						CV
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>VELOCIDAD MAXIMA:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#333333" size="2">
						<strong>
						<%=rs.Fields("Velocidad")%>
						</strong>
						</font>
						<font color="#000000">
						<strong>
						KM/H
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>CILINDRADA:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#333333" size="2">
						<strong>
						<%=rs.Fields("cilindrada")%>
						</strong>
						</font>
						<font color="#000000">
						<strong>
						CC
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>CONSUMO:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#333333" size="2">
						<strong>
						<span title="Extraurbano">
						<%=rs.Fields("Consumo1")%>
						</span>/
						<span title="Mixto">
						<%=rs.Fields("Consumo2")%>
						</span>/
						<span title="Urbano">
						<%=rs.Fields("Consumo3")%>
						</span>
						</strong>
						</font>
					</td>
				</tr>
				<tr>
					<td colspan="3" height="10"></td>
				</tr>
				<tr>
					<td align="right">
						<font color="#003366"><strong>COSTO:</strong></font>
					</td>
					<td></td>
					<td align="left">
						<font color="#333333" size="2">
						<strong>
						<span title="10.000 Km.">
						<%=round(rs.Fields("coste10"),3)%>
						/</span>
						<span title="20.000 Km.">
						<%=round(rs.Fields("coste20"),3)%>
						/</span>
						<span title="30.000 Km.">
						<%=round(rs.Fields("coste30"),3)%>
						</span>
						</strong>
						</font>
					</td>
				</tr>
			</table>
            </div>
		</td>
		<td width="5"></td>
		<td width="390" align="center">
			<table border="0" cellspacing="0" cellpadding="0" width="390">
				<tr>
					<td align="center" valign="top" width="">						
					</td>					
					<td width="5"></td>
					<td align="center" width=""> 
                		<div id="foto">						
							<%
							foto=rs.fields("fotos")
							for i=1 to foto 
							if i<10 then
							%>
							<a href="javascript:afoto('http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg')">
							<img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg" width="200" border="0">
							</a>
							<%else%>
							<a href="javascript:afoto('http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg')">
							<img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg" width="200" border="0">
							</a>
							<br>
							<%
							end if 
							next
							%>
                  		</div> 

Me podriasi ayudar esta solucion lo antes posible!!!

Por favor y gracias
  #2 (permalink)  
Antiguo 19/09/2005, 06:35
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
El error es claro, te esta diciendo que "foto" es null.
Prueba haciendo un response.write para ver si "foto" tiene algun valor.

Saludos.
  #3 (permalink)  
Antiguo 19/09/2005, 07:55
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 23 años, 4 meses
Puntos: 16
y puedes poner:
if foto <>"" then foto= Replace(foto, "jpg", "gif")
  #4 (permalink)  
Antiguo 19/09/2005, 08:18
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
Nada, sigue igual...he metido como
Código PHP:
Session("Marca")=rs.Fields("Marca")
        
foto Replace(foto"jpg""gif")
        if 
foto <>"" then fotoReplace(foto"jpg""gif")
        %>
        <
td width="350">
            <
div id="datos">                 
            <
table width="350" border="0" cellpadding="0" cellspacing="0">
                <
tr>
                    <
td width="165" align="right">
                        <
table width="165" border="0" cellpadding="0" cellspacing="0">
                            <
tr>
                                <
td width="85" align="left">
                                    <
div id="foto">
                                        <%
                                        
foto=rs.fields("fotos")
                                        for 
i=1 to foto 
                                        
if i<10 then
                                        
%>
                                        <
img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/0<%=i%>.jpg" border="0">
                                        <%
                                        
end if 
                                        
next
                                        
%>
                                    </
div>
                                </
td

y da error como:
Microsoft VBScript runtime error '800a005e'

Invalid use of Null

/newage/guiacomprador/pruebaguia.asp, line 235
La linea 235 viene de for i=1 to foto
  #5 (permalink)  
Antiguo 19/09/2005, 08:39
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 5 meses
Puntos: 144
Para que eso te funcione, rs.fields("fotos") debería ser un número, y me da la impresión que es la foto en sí (nombre del archivo). ¿No?.

Y esta linea: if foto <>"" then foto= Replace(foto, "jpg", "gif")
Yo la cambiaría por esta otra:
if foto<>"" and not isnull(foto) then foto=Replace(foto, "jpg", "gif")
  #6 (permalink)  
Antiguo 19/09/2005, 08:45
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
si, este esta ubicado en http://www.motorpoint.com/newage/guiacomprador/compracoches.asp/guia_comprador_nueva/fotos_coches/(cada marca)/(cada modelo)/01.jpg y otro 02.jpg
  #7 (permalink)  
Antiguo 19/09/2005, 09:22
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 23 años, 4 meses
Puntos: 16
pero remplazas el JPG por GIF? digo, solo pregunto
  #8 (permalink)  
Antiguo 19/09/2005, 09:39
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
no, me refiero jpg
  #9 (permalink)  
Antiguo 20/09/2005, 04:19
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
Sigue siendo igual error...alguien me puede ayudar!!

O bien, os mando mis archivos (compracoches.asp, resulguia.asp, pruebaguia.asp y la base de datos nuevos2.mdb) para que podeis revisar cual es el motivo fallo?

Confirmame para mandar el email!!!

Gracias
  #10 (permalink)  
Antiguo 20/09/2005, 06:16
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
Yo cuando tengo que tratar con valores que pueden ser null o pueden tener un valor "", lo que hago es lo siguiente:

Código:
variable = Trim(" " & oRs("campo"))

If variable <> "" then
      variable = Replace(variable, "jpg", "gif")
else
......
De esa forma el valor de "variable" siempre va a ser "" independientemente si se trata de null o de "". Se entiende?

Espero que te sirva de algo.

Saludos.
  #11 (permalink)  
Antiguo 20/09/2005, 06:46
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
He comprobado y nada!!

Prefiero que os echeis vistazo en mis archivos comprimidos de ASP y el base de datos que está en: http://www.motorpoint.com/zip/Error_Replace.zip y descomprimas y haceis una prueba en localhost y ya me dirais!!!

Gracias
  #12 (permalink)  
Antiguo 20/09/2005, 07:14
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
En al linea 16 del archivo "pruebaguia.asp" pone lo siguiente:
Código:
foto=Cint("0" & rs.Fields("Fotos"))
Quita las lineas 248 y 507 donde dice:

Código:
foto=rs.fields("fotos")
De esa forma no te genera error, pero por lo que veo algo esta mal.
Si el campo "foto" es un número, no veo la necesidad de hacer un Replace.
Ahora si el campo "foto" es un texto como ser "archivo.gif" o "1025.gif", cuando hagas el bucle "For I = 1 to foto" te va a generar un error.
Espero que me hayas entendido.

Saludos
  #13 (permalink)  
Antiguo 20/09/2005, 07:35
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
Ufff, estoy lio ya que he inserato la lina 16
Código PHP:
foto=Cint("0" rs.Fields("Fotos")) 
y quitar las dos lineas 248 y 507 donde
Código PHP:
foto=rs.fields("fotos"

En fin, comprobé la Web de localhost y dice que hay error por
Tipo de error:
Microsoft JET Database Engine (0x80040E07)
No coinciden los tipos de datos en la expresión de criterios.
/nuevos_coches/pruebaguia.asp, línea 1104

Esta linea viene de:
Código PHP:
rs.Open SQLoConn 
Porque?
  #14 (permalink)  
Antiguo 20/09/2005, 07:59
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
El campo "Tipo" es numérico. En la sentencia SQL no puedes poner "... AND tipo ='10'..." porque te va a dar error. Debes poner:
Código:
SQL="SELECT TOP 3 * FROM NUEVOS WHERE (Marca <> '"&marca&"') AND (Tipo = "&tipob&")  AND (Combustible = '"&combusb&"') AND (Potencia > "&Clng(potencia1)-20&") AND (Potencia < "&Clng(potencia2)+50&") AND Precio in(SELECT PRECIO FROM NUEVOS WHERE (Precio > "&Clng(precio_ini)-100&") AND (Precio < "&Clng(precio_fin)+20000&")) ORDER BY PRECIO, POTENCIA DESC;"
  #15 (permalink)  
Antiguo 20/09/2005, 08:16
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 22 años, 4 meses
Puntos: 1
He comprobado en Web pública http://www.motorpoint.com/newage/gui...mpracoches.asp

Selecciono un Alga y modelo 156....
Aparecen miles modelos diferentes....

Y escojo un modelo, ejemplo Alfa 156 SW 1.6 Distinctv , y apaece correcta pero el problema es "No sale las imagenes"...

tiene que estar como http://www.motorpoint.com/newage/gui...meo/156/01.jpg
y
otro
http://www.motorpoint.com/newage/gui...meo/156/02.jpg

La parte derecha debe estar dos imagenes, debajo de la barra amarilla"Coche NUEVO - FICHA TÉCNICA"..el codigo de pruebaguia.asp dónde
Código PHP:
<div id="foto">                        
<%
'foto=rs.fields("fotos")
for i=1 to foto
if i<10 then
%>
<a href="javascript:afoto('
http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg')">
<img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg" width="200" border="0">
</
a>
<%else%>
<
a href="javascript:afoto('http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg')">
<
img src="http://www.motorpoint.com/newage/guia_comprador_nueva/fotos_coches/<%=rs.Fields("marca")%>/<%=rs.Fields("modelo")%>/0<%=i%>.jpg" width="200" border="0">
</
a>
<
br>
<%
end if 
next
%>
</
div
Todos los modelos tiene que salir cada dos imagenes distintas!!!


Y la de SQL sigue igual!!!
Falla error
  #16 (permalink)  
Antiguo 20/09/2005, 08:28
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 22 años, 2 meses
Puntos: 1
Mira, si estas usando la misma DB que agregaste el el .zip te comento que a mi no me da error ni tampoco hay un registro que tenga el campo fecha con algun valor. Osea que no se va a mostrar ninguna foto.
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 05:47.