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

Ayuda A Organizar ?

Estas en el tema de Ayuda A Organizar ? en el foro de ASP Clásico en Foros del Web. A ver estoy trabajando en un sistema de noticias y necesito ideas, a - Por una lado tengo el formulario que ingresa la noticia a ...
  #1 (permalink)  
Antiguo 09/11/2002, 21:12
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
Ayuda A Organizar ?

A ver estoy trabajando en un sistema de noticias y necesito ideas,

a - Por una lado tengo el formulario que ingresa la noticia a la base de datos .

b- Por el otro lado tengo un listado preliminar que me muestra el titulo de la noticia y un preliminar de que se trata la noticia.

c - En tercer lugar tengo las noticias que son mostradas de acuerdo al listado anterior mencionado .

El tema concreto es el siguiente por ejemplo cada 5 noticias cambia el genero de las mismas es decir supongamos las primeras 5 noticias hablan de deportes - luego hay otra division de por ejemplo medicina y bienen 5 noticias mas y asi sucesivamente , yo quiero saber como puedo organizar este sistema , hace rato que estoy trabajando en este sistema y con gusto cuando lo tenga terminado al que me lo solicite se lo envio .

Yo quiero cortes parciales de 5 en 5 segun la categorias de las noticias , y me cuesta organizar todo quisiera saber si tienen alguna idea de como organizarlo.

hugorei
  #2 (permalink)  
Antiguo 09/11/2002, 21:32
Avatar de g_susdaniel  
Fecha de Ingreso: mayo-2001
Ubicación: Frente al Monitor :þ
Mensajes: 995
Antigüedad: 24 años
Puntos: 0
muestralos en tablitas diferentes...

igual para cada tipo de noticias pero vas a cambiar tu SQL para seleccionar la categoria

Código PHP:
SQL ="SELECT * FROM tutabla WHERE categ=5 ORDER BY date DESC LIMIT 0,05" 
Puedes usar en vez de LIMIT, TOP pero si usas mysql no te servirá, la SQL que te muestro es un ejemplo

tutabla = la tabla donde guardes tus noticias
categ = La categoria que irá variando segun como tengas guardadas tus categorias (deportes, nacionales, etc...)
date = el campo de tu tabla donde guardas la fecha de publicacion
__________________
No, no no... no hay firma...
  #3 (permalink)  
Antiguo 09/11/2002, 22:58
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
BARBARO GRACIAS POR LA IDEA , PERO DECIME NECESITO UNA HOJA DE PAGINACION POR CADA CATEGORIA O CATEGORIA PUEDE SER UNA VARIABLE , ACLARAME SOLO ESE PUNTO QUE NO LO TENGO CLARO , CREO QUE SERIA UNA HOJA DE PAGINACION POR CATEGORIA CREO .

SI ES UNA VARIABLE DECIME COMO PUEDO PASARLA .


GRACIAS POR TU TIEMPO
  #4 (permalink)  
Antiguo 10/11/2002, 03:27
Avatar de g_susdaniel  
Fecha de Ingreso: mayo-2001
Ubicación: Frente al Monitor :þ
Mensajes: 995
Antigüedad: 24 años
Puntos: 0
Lo mejor es que sea solo una pagina para todas las categoriarias y armarias los links así...

Código:
<a href="categoria.asp?id=5">Deportes</a>
<a href="categoria.asp?id=3">Nacionales</a>
y en tu pagina categoria.asp recojerias id

Código PHP:
id Request.QueryString("id")

'luego armarias tu codigo a partir de la sentencia 
'
donde seleccionas todas las noticias de esa categoria recojida

SQL 
"SELECT * FROM tutabla WHERE categ='"&id&"' ORDER BY date DESC;" 
Suerte ;)
__________________
No, no no... no hay firma...
  #5 (permalink)  
Antiguo 10/11/2002, 06:24
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
Otra variante es que muestres solo las 5 primeras noticias de cada ID.

SQL="Select top 5 * from tutabla where ID="&ID&" order by campo desc"

Ese mismo bloque puedes encerrarlo dentro de un bucle FOR/NEXT que vaya incrementando el valor de ID.
con eso te sacaria los 5 ultimos mensaje de cada categoria de tu foro:
Algo asi.

<%
set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("tubase.mdb")&";"

for ID=1 to 5 ' o el numero de categorias que tengas
SQL="Select top 5 * from tutabla where ID="&ID&" order by
rs.Open SQL, oConn,1,2
campo desc"

do while not rs.eof
respose.write("campo1")
respose.write("campo1")
'etc
loop
rs.close

next
%>
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #6 (permalink)  
Antiguo 10/11/2002, 11:05
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
gracias por ayudarme pero tengo un lio barbaro en la cabeza , probe las dos formas que me dicen pero me da varios errores, si son tan amables me podrian pasar el codigo como deberia hacerlo porque se me mezclo todo lo que tenia con lo que me pasaron.

MI TABLA ESTA ASI ARMADA:

ID:
Categoria / aca va el nro de categoria segun articulo
titulo / titulo de la noticia
copete / introduccion o subtitulo
noticia / redacto la noticia en si
img / carpetas de imagenes donde paso el link para mostrar

LA INTRODUCCION A LA TABLA CON EL FORMULARIO Y LA PAGINA QUE AGREGA LA NOTICIA ME FUNCIONA OK.

El problema maximo que tengo es como mostrar por categoria el codigo me confunde .

Yo lo que quiero es que cuando me muestre las noticias me muestre 5 por categoria y es ahi donde me hago lio , ya que primero quiero una breve introduccion a cada noticia , es decir el titulo la introduccion asi con las 5, de ahi haciendo click que el usuario vaya a la noticia en si . no se si me explico. hace horas que estoy con el tema y no consigo destrabarme .

AYUDA PLISSSSSS
  #7 (permalink)  
Antiguo 10/11/2002, 12:16
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
<%
set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("tubase.mdb")&";"

for ID=1 to 5 ' o el numero de categorias que tengas
SQL="Select top 5 * from tutabla where ID="&ID&" order by
rs.Open SQL, oConn,1,2
campo desc"

' aqui tendrias que crear una tabla o lo que quisieras para ver
' mejor los datos, yo te lo dejo asi a pelo

do while not rs.eof
%>
<a href="detalle.asp?ID=<%response.write("ID")%>">
' con esto creamos un vinculo a una pagina usando su ID para
' localizar ese registro donde sacaremos toda la noticia de forma detallada.
<%
response.write("Categoria ")
response.write("titulo ")
response.write("copete ")
loop
rs.close

next
%>

Por otra parte la pagina detalle.asp podria tener este codigo:

<%
set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("tubase.mdb")&";"

varID=request.querystring("ID")
SQL="Select * from tutabla where ID="varID"
rs.Open SQL, oConn,1,2

' aqui tendrias que crear una tabla o lo que quisieras para ver
' mejor los datos, yo te lo dejo asi a pelo
do while not rs.eof
response.write("ID")
response.write("Categoria ")
response.write("titulo ")
response.write("copete ")
response.write("noticia")
response.write("imagen")
loop
rs.close
%>
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #8 (permalink)  
Antiguo 10/11/2002, 12:35
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
ANTETODO GRACIAS MAESTRO POR TU TIEMPO , HE INTENTADO METER EL CODIGO QUE ME PASAS PERO ME DA EL SIGUIENTE ERROR POR QUE ?

ADODB.Recordset error '800a0e78'

La operación no está permitida si el objeto está cerrado
  #9 (permalink)  
Antiguo 10/11/2002, 12:41
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
Donde te da el error?.
En la primera o en la segunda pagina, es decir en el listado general o al ver el mensaje en detalle.asp

Pon la linea de codigo donde falla.
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net

Última edición por maestro; 10/11/2002 a las 12:43
  #10 (permalink)  
Antiguo 10/11/2002, 12:43
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
en la primer pagina , estamos casi en linea.
  #11 (permalink)  
Antiguo 10/11/2002, 12:51
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
Pegame exactamente tu codigo y dime la linea donde falla,
Pues si, estamos en linea
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #12 (permalink)  
Antiguo 10/11/2002, 13:14
(Desactivado)
 
Fecha de Ingreso: agosto-2002
Mensajes: 1.458
Antigüedad: 22 años, 9 meses
Puntos: 0
SQL="Select top 5 * from tutabla where ID="&ID&" order by

en esta linea me tira el error ahora si junto la linea

SQL="Select top 5 * from Noticias where ID="&ID&" order by rs.Open SQL, oConn,1,2 campo desc"

digamos que esta linea va toda junta a lo largo

me tira este error

ADODB.Recordset error '800a0e78'

La operación no está permitida si el objeto está cerrado.

/ba/TMP8v41v5djy0.asp, line 21

lo que pasa es que manejo muy poco sql no se si esta bien escrita la linea
  #13 (permalink)  
Antiguo 10/11/2002, 14:45
 
Fecha de Ingreso: febrero-2002
Ubicación: Navarra
Mensajes: 701
Antigüedad: 23 años, 3 meses
Puntos: 2
Cita:
SQL="Select top 5 * from Noticias where ID="&ID&" order by rs.Open SQL, oConn,1,2
No debes poner esta línea así debes ponerla de esta forma, como te lo ha dicho maestro, solo que se ha olvidado acabar el SQL:

SQL="Select top 5 * from tutabla where ID="&ID&" order by Categoria"
'esto es otra línea, es la que abre la base de datos
rs.Open SQL, oConn,1,2

De todas formas yo también te doy las gracias mestro, tenía también esta misma duda en una página que estoy programando, esta es la dirección:
http://www.copysan.com/dapp2/Nombre_...Destacadas.asp
(esta bien esto de que se puedan editar los mensajes, ´no había puesto bien la dirección)
Como veis se repiten las categorías y gracias a la forma que has mencionado, puede que se me solucione ese problema.
Un saludo

Última edición por haven; 10/11/2002 a las 14:47
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 09:16.