Los Foros de ASPTutor.com
Home | Perfil | Registrarse | Temas Activos | Miembros | Buscar | FAQ
Usuario:
Password:
 Todos los Foros
 ADO
 Como genero los id?pagina=##
 Foro Bloqueado  Tema Bloqueado


Autor Temas
novato-asp-5
Starting Member


25 Posts
Mensajes - 26 Mar 2003 :  05:51:05  Ver Perfil  Enviar Email
Quisiera saber como genero los codigos id?pagina=##, trato de hacer una consulta inicial que muestra un resumen de un articulo y de este debe saltar a la pagina con el articulo completo. ya hago la primera parte con access, sin embargo no se como definir o como llamar las funciones id?pagina=##


buho_nero
Moderator

España
1316 Posts
Posted - 26 Mar 2003 :  09:59:35  Ver perfil  Enviar e-mail
Haces un listado con un recordset para mostrar los tíulos, resumen, etc:

<%while not rst.eof%>
<a href="pagina_noticia.asp?id_noticia="<%=rst("id_noticia")%>><%=rst("titulo")%></a>
<%
rst.movenext
wend
%>

Esta es la idea, se puede poner de fomas más elegantes, pero eso te lo dejo a ti.

Inicio Pagina

novato-asp-5
Starting Member


25 Posts
Posted - 26 Mar 2003 :  15:03:57  Ver perfil  Enviar e-mail
Gracias , Funciono de maravilla. ahora la pagina_noticia.asp debe tener alguna busqueda, ya tengo el codigo html pero no me imagino como generar la busqueda utilizando el id_noticia sobre la pagina que se abre

Inicio Pagina

buho_nero
Moderator

España
1316 Posts
Posted - 26 Mar 2003 :  16:27:40  Ver perfil  Enviar e-mail
¿Sobre qué será la búsqueda?
¿No es una página donde ves una noticia concreta?

Inicio Pagina

novato-asp-5
Starting Member


25 Posts
Posted - 26 Mar 2003 :  16:46:35  Ver perfil  Enviar e-mail
Perdon por lo extenso de este mensaje

En resumen, es una base en access que contiene en la pagina principal, Titulo Autor, Encabezado ,contenido ( link ) y otros, en la pagina principal se muestra solamente el titulo , encabezado y el link, este a su vez se va a la otra asp que debe hacer la consulta y traer el campo sobre el cual se selecciono el articulo en la pagina principal mostrando entonces el titulo, contenido, autor etc, en la pagina nueva

yo pienso poner en la base de datos como un LIFO ( last in first Out), de tal forma que siempre estara generando el id?1xx=1 sobre el ultimo elemento ingresado.

algo asi
basededatos.mdb
nombre autor tema encabezado articulo linkasp
n1 a1 t1 E1 200 palabras Ar1 ?00 palabras 1
n2 a2 t2 E2 200 palabras Ar2 ?00 palabras 2
n3 a3 t3 E3 200 palabras Ar3 ?00 palabras 3
n4 a4 t4 E4 200 palabras Ar4 ?00 palabras 4


en la principal sale

n1
E1 200 palabras
consulta.asp?link=1
tabla en otro lado

n2
E3 200 palabras
consulta.asp?link=2
tabla en otro lado

n3
E3 200 palabras
consulta.asp?link=3
tabla en otro lado


una vez se presiona consulta.asp?link=1
saldra entonces en la pagina colsulta.asp
nombre autor tema encabezado articulo
n1 a1 t1 E1 200 palabras Ar1 ?00 palabras


o

una vez se presiona consulta.asp?link=2
saldra entonces en la pagina colsulta.asp
nombre autor tema encabezado articulo
n2 a2 t2 E2 200 palabras Ar2 ?00 palabras

mi idea era poner en la base de datos un campo que me identifique la informacion solicitada y esta sirva de link para mostrar el articulo, pero transportar esa informacion para hacer la busqueda y muestra en la pagina consulta es mi duda


Inicio Pagina

buho_nero
Moderator

España
1316 Posts
Posted - 26 Mar 2003 :  19:44:15  Ver perfil  Enviar e-mail
Lo que necesitas mandar a la página donde ves la noticia (vamos a llamarla "noticia.asp") es la mínima información que identifique una noticia de forma única. En tu caso quizá sería "nombre", "autor" y "tema", aunque tampoco es para estar seguro.
Yo en tu lugar añadiría un campo autonumérico a la tabla, de esta forma estás seguro de que con un simple número identificas cada noticia, además, la base se encarga de gestionarlo (no te tienes que preocupar de llenarlo tú). digamos que el campo es "id_noticia". Entonces el link lo haces como te puse en la primera respuesta.
En "noticia.asp" recoges la variable y realizas esta consulta:

"SELECT * FROM tabla_noticias WHERE " & request("id_noticia")

El problema es demasiado sencillo como para pensar en colas (FIFO), pilas (LIFO), listas ..

Inicio Pagina

novato-asp-5
Starting Member


25 Posts
Posted - 27 Mar 2003 :  03:14:30  Ver perfil  Enviar e-mail
Creo que ya casi se resuelve. estos son los dos codigos ( si algo sobra o me falta algo, por favor ayuda !! )
el segundo codigo asp es el que esta fallando, no se la verdad como conectar. la pagina esta abriendo con la consulta correctamente. pero no he podido con la sintaxis de el codigo.

Page:
GET /pagina_noticia.asp?id_noticia=1

aca incluyo los dos codigos. el que funciona y el que falla mas el mensaje de error.

Gracias por la ayuda ha sido muy util

menu.asp
----------------------------------------------------------------------------------------------------
<%@ Language="VBScript" %>
<html>
<head>

<%
Dim Conexion,Tabla
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla=Server.CreateObject("adodb.recordset")
Conexion.Open "consulta"
Tabla.Open "tabla_noticias",Conexion
%>

<% Tabla.Movefirst %>
<% while not tabla.eof%>
<%=Tabla.Fields("encabezado")%>
<a href="pagina_noticia.asp?id_noticia=<%=Tabla.Fields("id_noticia")%>">
<%=Tabla.Fields("Titulo")%>
</a>

<% Tabla.Movenext %>
<%wend %>
</body>
</html>

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

pagina_noticia.asp

<%@ Language="VBScript" %>
<html>
<head>

<%
Dim Conexion,Tabla
Set Conexion=Server.CreateObject("adodb.connection")
Set Tabla=Server.CreateObject("adodb.recordset")
Conexion.Open "consulta"
Tabla.Open "tabla_noticias",Conexion
%>

"SELECT * FROM tabla_noticias WHERE REQUEST ("id_noticia")

<%=Tabla.Fields("encabezado")%>
<%=Tabla.Fields("Articulo")%>
</body>
</html>

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


El mensaje de error es

Error Type:
Microsoft VBScript compilation (0x800A0400)
Expected statement
/pagina_noticia.asp, line 14
"SELECT * FROM tabla_noticias WHERE "& Request("id_noticia")


Browser Type:
Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)

Page:
GET /pagina_noticia.asp?id_noticia=1

Inicio Pagina

novato-asp-5
Starting Member


25 Posts
Posted - 27 Mar 2003 :  04:39:44  Ver perfil  Enviar e-mail
modificacion
hice algunos arreglos esta casi listo pero me sale lo siguiente

la modificacion fue

Tabla.Open "Select * From tabla_noticias Where Nombre='"&Request ("id_noticias")&"'",Conexion

el error es

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/pagina_noticia.asp, line 11

Inicio Pagina

buho_nero
Moderator

España
1316 Posts
Posted - 27 Mar 2003 :  09:44:12  Ver perfil  Enviar e-mail
Yo en tu lugar usaría una variable para la consulta SQL:

sql = "Select * From tabla_noticias Where Nombre='"&Request ("id_noticia")&"'"
Tabla.Open sql,Conexion

Inicio Pagina

novato-asp-5
Starting Member


25 Posts
Posted - 27 Mar 2003 :  22:07:27  Ver perfil  Enviar e-mail
Hola de Nuevo.
No se si es mucho pedir. ya intente por varias partes y haciendo busquedas, el SQL esta ya instalado, ya hice el obdc sobre la base de datos etc, ahora en el codigo alli si fracase, estoy buscando mas codigo SQL para la parte de abir la BD no seria mucho pedir si me ayudan con ese codigo? es decir.( falle en crear el script en asp creo perdere un año mas decifrando la logica del sql..) gracias si si.. gracias de todos modos si no. ha sido muy util las ayudas previas que me han dado


Inicio Pagina

buho_nero
Moderator

España
1316 Posts
Posted - 28 Mar 2003 :  09:35:30  Ver perfil  Enviar e-mail
El SQL es muy sencillo, sólo tienes que empezar con buen pie.
Pero no comprendo dónde estás atascado.
Si tienes ya un ODBC, la conexión se abre sin problemas:

set con = server.createobject("ADODB.Connection")
con.open "nombre_DSN"

y para abrir una tabla:

set rst_tabla = server.createobject("ADODB.Recordset")
sql = "SELECT * FROM tabla"
rst_tabla sql,con,3,3

y listo.
Tras esto lo único que va a cambiar es la sentencia SQL, y para eso hay manuales bastante decentes.

Inicio Pagina

   
 Foro Bloqueado  Tema Bloqueado
Ir a:
Los Foros de ASPTutor.com Los Foros de ASPTutor.com
Ir al principio de la Página

 Imprimir Tema
 

Descargas de manuales¦ Ejemplos de código ¦ Artículos mas visitados ¦ Envía tu articulo ¦ Foros ¦
  Libro de visitas ¦Crea un enlace con ASPTutor 
 

    © 2001-Hasta hoy  Pedro Rufo Martín  contactar