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

Includes

Estas en el tema de Includes en el foro de ASP Clásico en Foros del Web. Hola Ya se que ho se puede incluir un archivo de forma dinamica, pero... que solución adoptais para hacer algo asi.? Tengo en una Db ...
  #1 (permalink)  
Antiguo 14/12/2002, 18:33
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0
Includes

Hola
Ya se que ho se puede incluir un archivo de forma dinamica, pero...

que solución adoptais para hacer algo asi.?

Tengo en una Db la direccion de unos archivos html y asp ( al igual que con las imagenes)

¿ como se puede hacer para incluir uno u otro en funcion de la selección del usuario ?

Tendreis alguna forma de hacerlo, ¡supongo que así haceis vuestras páginas ¿no?!

Saludos.

Juan
  #2 (permalink)  
Antiguo 14/12/2002, 18:37
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 22 años, 9 meses
Puntos: 0
<% If Request.Form("eleccion") = 1 Then %>
<!--#include file="archivo.asp"-->

<% else %>
<!--#include file="archivo2.asp"-->
<% End If %>

Esto tomando que son 2 elecciones, sino agregá más ifs anidados o bien un Select Case....
saludos
  #3 (permalink)  
Antiguo 15/12/2002, 09:02
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0
Hola,

Asi lo tengo asumido, el problema lo tengo por que el
include file=archivo.asp debe ser include file="lo que he traido en el record set"

Se que no es posible incluir de forma dinamica, pero lo que pregunto es que solucion habeis adoptado los demás,

Hago esta pregunta porque si es posible incluir en una base de datos la direccion del arvhivo y luego incluirlo, sería mucho más facil el diseño de los contenidos.

Saludos
  #4 (permalink)  
Antiguo 15/12/2002, 10:10
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0
Ah,

Se me olvidava tambien añadir que utilizando SELECT CASE el problema viene que si son varios los archivos a elegir, se crea una página gigantesca que tarda en cargar bastante.

  #5 (permalink)  
Antiguo 15/12/2002, 12:15
Avatar de lubetpic  
Fecha de Ingreso: enero-2002
Ubicación: San Jose
Mensajes: 679
Antigüedad: 23 años, 3 meses
Puntos: 0
Cita:
Mensaje Original por DeLaVega
<% If Request.Form("eleccion") = 1 Then %>
<!--#include file="archivo.asp"-->

<% else %>
<!--#include file="archivo2.asp"-->
<% End If %>

esto no funciona

recuerda que los include se procesan antes que cualquier sentencia en asp

<% If Request.Form("eleccion") = 1 Then
response.write "<!--#include file='archivo.asp'-->"
else
response.write "<!--#include file='archivo2.asp'-->"
End If %>

asi si sirve
  #6 (permalink)  
Antiguo 15/12/2002, 12:43
Avatar de ocionet  
Fecha de Ingreso: agosto-2002
Ubicación: Costa Brava, Catalunya
Mensajes: 605
Antigüedad: 22 años, 7 meses
Puntos: 0
Deberias hacerlo de la siguiente manera:

Declaras esta variables:

usuario= aki pones el usuario
inc= usuario+".asp"
-------
I luego pones:

Server.Execute (inc)


----------------------

Haciendolo asi si el nombre del usuario es "yo", se hará el include del archivo " yo.asp""
__________________
Videos de impacto y divertidos
  #7 (permalink)  
Antiguo 15/12/2002, 13:01
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0


Quieres decir que si pngo algo asi:

<%
archivo= TRIM(Request.QueryString("archivo"))

Server.Execute (archivo)

%>

Debe de fguncionar?

Voy a probar ahora mismooooo
  #8 (permalink)  
Antiguo 15/12/2002, 14:22
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 22 años, 9 meses
Puntos: 0
Cita:
esto no funciona

recuerda que los include se procesan antes que cualquier sentencia en asp

<% If Request.Form("eleccion") = 1 Then
response.write "<!--#include file='archivo.asp'-->"
else
response.write "<!--#include file='archivo2.asp'-->"
End If %>

asi si sirve

Probé de las 2 formas y me funcionan las 2, con la siguiente diferencia. Usando la mía, me inserta el archivo (.asp) y me muestra la página insertada. Usando la que pusiste vos, me escribe la línea <!--#include file='archivo2.asp'--> pero sólo eso, digamos que no me muestra la página asp. A que se deberá la diferencia? (también probé por probar en la tuya usar "" en vez de ', pero es lo mismo)
saludos
  #9 (permalink)  
Antiguo 15/12/2002, 15:08
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0
Bueno.. :cantar:

Tal y como han comentado queda solucionado con la instruccion Server.Execute

Ya estoy haciendo pruebas y funciona perfectamente.
Así que voy a migrar todos los artículos a este sistema.

Lo que no entiendo es
¿ Que diferencia hay entre include <> Server.Execute <> Server.Transfer

Hacen lo mismo los tres? y si es así, tienen el mismo rendimiento?

Gracias a todos
  #10 (permalink)  
Antiguo 16/12/2002, 11:42
Avatar de ocionet  
Fecha de Ingreso: agosto-2002
Ubicación: Costa Brava, Catalunya
Mensajes: 605
Antigüedad: 22 años, 7 meses
Puntos: 0
Bueno yo ya pregunte eso en este post: http://www.forosdelweb.com/showthrea...hreadid=101657
__________________
Videos de impacto y divertidos
  #11 (permalink)  
Antiguo 16/12/2002, 12:01
 
Fecha de Ingreso: diciembre-2001
Mensajes: 262
Antigüedad: 23 años, 4 meses
Puntos: 0
Ok.

Mil graciasss
  #12 (permalink)  
Antiguo 16/12/2002, 21:44
Avatar de ocampo  
Fecha de Ingreso: abril-2002
Ubicación: Shangrila, Ciudad de la Costa, Canelones, Uruguay
Mensajes: 11
Antigüedad: 23 años
Puntos: 1
DeLaVega y Lubetpic

DeLaVega y Lubetpic:

Simple, la diferencia se debe a que los includes se procesan del lado del servidor, y no del lado del cliente. Esto implica que

response.write "elinclude"

solo escribira una linea del lado del cliente, el cual NO lo interpreta como un include. Por otra parte, con el metodo de DeLaVega sí funciona, ya que es del lado del servidor, y el el iis el que se encarga de leer el archivo incluido y mandarlo todo junto al cliente, tal como si fuera un archivo solo. Por otra parte, no es cierto que los includes se procesan antes que cualquier codigo asp, lubetpic, deberias hacer un par de pruebas, y llegarias a esta conclusion.
  #13 (permalink)  
Antiguo 16/12/2002, 22:13
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Cita:
Por otra parte, no es cierto que los includes se procesan antes que cualquier codigo asp, lubetpic, deberias hacer un par de pruebas, y llegarias a esta conclusion
Si que es correcto, ocampo. Los includes se procesan ANTES que el código ASP.

Suponiendo que tengas los archivos No_Es_5.asp y Es_5.asp y su contenido sea:

No_Es_5.asp: <% Response.Write("No es el número 5") %>
Es_5.asp: <% Response.Write("Si es el número 5") %>


...y luego un archivo que los incluya como el siguiente...


<%
Numero = 5

If Número <> 5 then
%>
<include... "No-Es-5.asp">
<% Else %>
<include... "Es-5.asp">
<% End if %>


...el resultado previo a la ejecusión del script ASP sería este:

<%
Numero = 5

If Número <> 5 then
%>
<% Response.Write("No es el número 5") %>
<% Else %>
<% Response.Write("Si es el número 5") %>
<% End if %>


... por lo que efectivamente SI los includes se procesan antes que los scripts ASP
  #14 (permalink)  
Antiguo 16/12/2002, 22:18
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 22 años, 9 meses
Puntos: 0
Pero no me quedó claro por qué lo que decía el amigo lubetpic solo escribe <!-include.... --> pero sin insertar el archivo (si no lo hubiera probado hubiera apostado a que era lo mismo que puse yo). Cuál sería la diferencia?
saludos
  #15 (permalink)  
Antiguo 16/12/2002, 22:31
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
DeLaVega, es que hacer esto:

response.write "<!--#include file='archivo.asp'-->"


Es lo mismo que hacer esto:

response.write "<b>Texto en bold</b>"


Te das cuenta?
Sólo estás enviando texto al cliente



Un Include nunca* puede estar dentro de tags de scripts ASP


* Si no me equivoco
  #16 (permalink)  
Antiguo 16/12/2002, 22:43
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 22 años, 9 meses
Puntos: 0
Ahora si, ya me di cuenta....
O sea, se cumple eso que primero se procesan los includes, y eso no sería include, sino solamente texto...
Muy bien, muchas gracias por la ampliación Dazuaga...
saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:01.