Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Dúvida Básica ASP


PedroK

Question

Boa tarde.

Estou precisando fazer um banner rotativo em asp, que está caminhando com dificuldades, pois não conheço de programação, mas acabo me virando.

Já consegui algum resultado, mas esbarro em duas questões que me parecem simples, porém como não conheço, pra mim são complexas:

1 - Preciso que seja escrito no local adequado o nome da seção relativa ao TIPO, que tenho na base em números.

Ex:

Receita = 1 - Ingrediente = 2 - Festas = 3 ... e assim por diante ...

P - Como faço essa associação, de quando eu tiver determinado TIPO (1,2,3,4...), que seja escrito em determinado lugar seu respectivo nome?

2 - Estou selecionando o último registro inserido na base por ordem de data.

Cmd = "select datapub,id,titulo,img_destaque,tipo from TABELA where destaque = "&"'1' order by datapub desc limit 1"

P - Como faço para selecionar somente o penúltimo ou somente o antepenúltimo, ou somente o quinto registro mais recente inserido na base?

Não sei ao certo se me fiz entender bem, mas desde já agradeço qualquer ajuda que puderem me dar.

Pretendo começar um curso de PHP em breve e certamente o fórum será de grande ajuda.

Alguém conheçe os cursos da TECNOPONTA e pode me dizer se são cursos com boa base de didática?

Obrigado pela atenção.

Edited by PedroK
Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Faz algo assim:

tblAnuncio

-codAnuncio

-dataCriacao

-dataPublicacao

-dataContratada

SELECT tblAnuncio.codAnuncio

FROM tblAnuncio

WHERE tblAnuncio.dataContratada <= NOW()

ORDER BY tblAnuncio.dataPublicacao, tblAnuncio.dataCriacao

NOW() é a data de hoje no access, dependendo do teu banco é outro comando

Aí você tem sempre como o primeiro registro o anuncio que foi publicado a mais tempo, e usa como critério de desempate que o anuncio criado primeiro vem primeiro. Depois que exibir o anuncio tu da um UPDATE na tabela atualizando o campo dataPublicacao (data e hora) pra NOW()

Link to comment
Share on other sites

  • 0

o limit aceita 2 parametros; se você usar os 2, o 1º passa a ser o nº d lnhas q você deseja ocultar..

nesse teu exemplo,

p/ exibir o penultimo registro, use 1 2º nº 1..

ficaria limit 1,1... vai te retornar o penultimo..

agora p/ selecionar o 5º registro mais recente.. tente algo como

limit 5, 1... mas vai depender porque você esta usando 1 outro criterio de seleção

where destaque = "&"'1'

q eu n sei direito o q sgnifica..

bom, + dicas sobre o limit:

http://www.linhadecodigo.com.br/Artigo.aspx?id=375

Link to comment
Share on other sites

  • 0

Quanto a primeira pergunta, usa JOINs

tblEmpregado

-codEmpregado

-nomeEmpregado

tblEmpregado

1 | João

2 | Maria

tblVenda

-codEmpredado

-codVenda

tblVenda

1 | 1

1 | 2

2 | 3

1 | 4

2 | 5

2 | 6

Aí eu preciso o nome de quem fez a venda 5

SELECT 
tblEmpregado.nomeEmpregado 

FROM 
tblVenda INNER JOIN tblEmpregado 
    ON(tblVenda.codEmpregado = tblVenda.codEmpregado) 

WHERE 
tblVenda.codVenda = 5

Nisso ele retorna "Maria"

Link to comment
Share on other sites

  • 0
o limit aceita 2 parametros; se você usar os 2, o 1º passa a ser o nº d lnhas q você deseja ocultar..

nesse teu exemplo,

p/ exibir o penultimo registro, use 1 2º nº 1..

ficaria limit 1,1... vai te retornar o penultimo..

agora p/ selecionar o 5º registro mais recente.. tente algo como

limit 5, 1... mas vai depender porque você esta usando 1 outro criterio de seleção

where destaque = "&"'1'

q eu n sei direito o q sgnifica..

bom, + dicas sobre o limit:

http://www.linhadecodigo.com.br/Artigo.aspx?id=375

Em primeiro lugar, agradeço a todos pelas respostas.

Marcelo_2, valeu mesmo, muito boa a explicação do limit no artigo indicado, resolveu minha dúvida nesta questão e funcionou muito bem no caso que eu precisava.

Fica ainda a questão de como relacionar e exibir determinado nome.

Só tenho números neste campo, mas quero que quando eu tenha um número seja exibido no lugar um nome.

Algo como:

no resultado do campo Tipo

se for 1 exibir Nome,

se for 2 exibir Comentário,

se for 3 exibir Notícia

Seria uma função?

Desde já obrigado pelo apoio.

Edited by PedroK
Link to comment
Share on other sites

  • 0
Aquele exemplo que passei alí resolve isso, você cria uma tabela com o valor correspondente ao código e traz ele usando JOIN

Iceguy,

Eu não queria ter que criar mais tabelas, pois tb são poucos tipos, uns 15 só.

Eu já estou selecionando esse Tipo, não tem como fazer com que o código identifique ele e imprima na tela a partir de uma lista prévia como passei?

De qualquer forma, vou tentar fazer o que me passou.

Obrigado

Link to comment
Share on other sites

  • 0

Você pode até fazer via código, fica mais "porco" e depois se precisar criar novo tipo f3rr0u, tem que alterar o fonte.

Via código fica tipo isso:

exemplo.asp

<%
Select Case rs("tipo")
Case 1:%>
<!--HTML com o Resultado do tipo 1 -->
<%Case 2:%>
<!--HTML com o Resultado do tipo 2 -->
<%Case n:%>
<!--HTML com o Resultado do tipo n -->
<%End Select%>

Link to comment
Share on other sites

  • 0
Você pode até fazer via código, fica mais "porco" e depois se precisar criar novo tipo f3rr0u, tem que alterar o fonte.

Via código fica tipo isso:

exemplo.asp

<%
Select Case rs("tipo")
Case 1:%>
<!--HTML com o Resultado do tipo 1 -->
<%Case 2:%>
<!--HTML com o Resultado do tipo 2 -->
<%Case n:%>
<!--HTML com o Resultado do tipo n -->
<%End Select%>

Olá Iceguy,

Estava testando esse Case neste momento e deu certo. Não sei se pode postar o link, estava vendo aqui: http://www.oficinadanet.com.br/artigo/96/i...asp__-_parte_ii

se não puder, me desculpem, peço que editem.

Como disse, é só para quebrar o galho, pretendo fazer um curso e assim aprender a fazer de uma forma mais limpa e eficaz.

Mas é isso mesmo.

Obrigado a todos.

Tópico encerrado.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...