Ir para conteúdo
Fórum Script Brasil
  • 0

[resolvido] Extraindo registro do banco de dados


backer

Pergunta

Ola pessoal estou com uma dificuldade para fazer uma pagina de log. Vala eu tenho um banco de dado em access que tem numero de identificação e o nome do usuário. Na primeira pagina o usuário vai digitar seu numero de identificação e clicar entrar na segunda pagina to topo vai retornar o nome do usuário. Meu código esta baixo . E tem uma imagem que eu fiz que espero explicar de modo claro. Se ágüem poder me ajudar valeu.

pagina%20log.gif

config.inc

<%
'///////////////////////////////////////////////////////////////////////////////////
'connection string

Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("Login.mdb")

'///////////////////////////////////////////////////////////////////////////////////


'///////////////////////////////////////////////////////////////////////////////////
'cleanup routines

Sub CleanUp(RS)
  RS.Close
  MyConn.Close
  Set RS = Nothing
  Set MyConn = Nothing
End Sub

Sub CleanUp2()
  MyConn.Close
  Set MyConn = Nothing
End Sub

'////////////////////////////////////////////////////////////////////////////////////
%>
PAGINA 1.asp
<html>
<head>
<title>RE</title>
</head>
<body>
<Form name="avaliacao" action="2.asp" method="get">
  <input type="Text" name="RE" value="" onChange="java script:window.document.avaliacao.submit();">  
<INPUT type="submit" value="entrar" name="botao">
</Form>
</body>
</html>
PAGINA 2.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
Codigo = Request.QueryString("RE")
    SQL = "Select RE, nome, [PassWord], Clearance, ExpireDate From Login Order By ID"
Set RS = MyConn.Execute(SQL)
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0
espero explicar de modo claro.

o q não ficou claro é qual é o problema q você ta tendo nesse codigo. o q você quer q ta dando errado??

olhando aqui, só o q achei estranho é q na segunda pagina você faz um select sem where, ou seja, ta pegando todos os usuarios do banco. você não devia filtrar apenas pelo q foi digitado??

mas explica direito o problema, senao não da pra gente saber.

e quando for postar sobre ASP, poste na sala de ASP e não no de Visual Basic.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Backer --

Então eu não estou conseguindo exibir o nome do usuário na pagina 2.asp. Pode ser isto mesmo mais não sei como fazer select com where. Tem como dar uma força valeu

Link para o comentário
Compartilhar em outros sites

  • 0

Esta dando a mensagem de erro 500 à descrição esta abaixo. Mais esta ai a url do teste na web

http://www.webmonter.com/teste/

O site não pode exibir a página

Causas prováveis:

• O site está em manutenção.

• O site tem um erro de programação.

Você pode tentar:

Atualizar a página.

Voltar para a página anterior.

Mais informações

Link para o comentário
Compartilhar em outros sites

  • 0

se você ta usando esse codigo da andreia, então a variavel codigo deve estar em branco. outra coisa, se o campo re for do tipo texto, o codigo tem q ser entre '.

SQL = "Select RE, nome, [PassWord], Clearance, ExpireDate From Login where re = "& codigo &" Order By ID"

la onde esta codigo, você tem q passar o codigo do re q veio da querystring. se não conseguir, poste ai o codigo pra gente ver.

Link para o comentário
Compartilhar em outros sites

  • 0

È ta complicado só da erro ainda continua com mesmo erro. O script esta abaixo. E o erro e o mesmo de antes o teste continua na web http://www.webmonter.com/teste/.

default.asp

<html>
<head>
<title>RE</title>
</head>
<body>
<Form name="avaliacao" action="dois.asp" method="get">
  <input type="Text" name="RE" value="" onChange="java script:window.document.avaliacao.submit();">  
<INPUT type="submit" value="entrar" name="botao">
</Form>
</body>
</html>
config.inc
<%
'///////////////////////////////////////////////////////////////////////////////////
'connection string

Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath("Login.mdb")

'///////////////////////////////////////////////////////////////////////////////////


'///////////////////////////////////////////////////////////////////////////////////
'cleanup routines

Sub CleanUp(RS)
  RS.Close
  MyConn.Close
  Set RS = Nothing
  Set MyConn = Nothing
End Sub

Sub CleanUp2()
  MyConn.Close
  Set MyConn = Nothing
End Sub

'////////////////////////////////////////////////////////////////////////////////////
%>
dois.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
</head>
<body>
<%
Codigo = Request.QueryString("RE")
    SQL = "Select RE, nome From Login where re = '& codigo &' Order By ID" 
Set RS = MyConn.Execute(SQL)
  %>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

cara, não é bem isso você ta pondo a string codigo dentro da query. o q você tem q fazer é tipo isso:

se o campo for re for numerico:

SQL = "Select RE, nome From Login where re = " & codigo & " Order By ID"
se o campo for re for texto:
SQL = "Select RE, nome From Login where re = '" & codigo & "' Order By ID"

Link para o comentário
Compartilhar em outros sites

  • 0

O erro continua o mesmo o ultimo teste que eu fiz o código da pagina dois. asp fico do jeito abaixo.

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
Codigo = Request.Form("RE")
    SQL = "Select RE, nome From Login where re = " & codigo & " Order By ID"
Set RS = MyConn.Execute(SQL)
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

hum é verdade, olhei no seu link e vi q os dados tão ficando no querystring porque você pos o metodo get do formulario, então, esqueca o meu ultimo post, pegue por Request.QueryString mesmo e não por Request.Form.

mas não tem logica o seu codigo não funcionar. o erro q ele acusa é q o codigo esta em branco.

bom... normalmente isso não faz diferenca, mas percebi no seu codigo, q a variavel Codigo aparece uma vez com o c maiusculo e outra com ele minusculo. normalmente isso não faz diferenca, mas tenta padronizar isso (deixar todas as vezes com o c mausculo ou todas com c minusculo) e veja se o erro continua, talvez seja do seu servidor.

se não ainda tente eliminar de vez a variavel codigo e monte a sql direto pela querystring. tipoi assim:

SQL = "Select RE, nome From Login where re = " & Request.QueryString("RE") & " Order By ID"
se não funcionar, tenta então printar o sql pra gente ver o q ele retorna. tipo, troque a linha
Set RS = MyConn.Execute(SQL)
por
Response.Write(SQL)
Response.End()[/code]

e veja o texto q aparecer e poste pra gente ver.

Link para o comentário
Compartilhar em outros sites

  • 0

O erro continua o mesmo ta complicado NE. Eu deixe o script do jeito que você me falo esta ainda no ar no link WWW.webmonter.com/teste.

A mensagem que o SQL envia de resposta é Select RE, nome From Login where re = 375453 Order By ID.

E o script da pagina dois .asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
    SQL = "Select RE, nome From Login where re = " & Request.QueryString("RE") & " Order By ID"
Response.Write(SQL)
Response.End()
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

cara a query ta certinha, ta voltando o codigo sim.

antes quando eu digitava o numero no seu site e clicava em entrar, ele me dava erro de q o codigo não estava sendo passado.

você disse aqui q o erro era esse:

O site não pode exibir a página

Causas prováveis:

• O site está em manutenção.

• O site tem um erro de programação.

Você pode tentar:

Atualizar a página.

Voltar para a página anterior.

Mais informações

mas pra mim aqui aparecia uma mensagem direfente. no caso a mensagem q você passou seria a mensagem custom do seu servidor, mas pra mim aparecia a mensagem de erro do proprio ASP.

tenta agora voltar a parte do execute como tava antes (tire as linhas do Response.Write e do Response.End e volte a linha q executava o sql). ai olha la qual a mensagem de erro q aparece pra você. se aparecer a mesma me avisa q eu olho qual vai aparecer pra mim e posta o codigo tb.

a e quando você for testar, tenta digitar um numero q realmente exista no banco pra ver se vai dar erro.

Link para o comentário
Compartilhar em outros sites

  • 0

Ates não estava dando erro pois tinha colocado na url para retornar o print do SQL que você falou agora esta o código

Pagina dois.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
    SQL = "Select RE, nome From Login where re = " & Request.QueryString("RE") & " Order By ID"
Set RS = MyConn.Execute(SQL)
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">

</body>
</html>

Mais o erro continua o mesmo. Os numero do banco de dados

RE = 375453

Nome Rafael

RE = 573211

Nome Backer

Link para o comentário
Compartilhar em outros sites

  • 0

q rolo

faz o seguinte muda sua conexão com o banco... use jet

se o usuariuo tem q fazer login poe o nome dele em um cookie ou session também e já facilita tudo...

SQL = "Select * From Login where re = " & Request.QueryString("RE") & " Order By ID"
Set RS = MyConn.Execute(SQL)

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Backer --

Bom eu refis até aparte que eu sei mais à parte do “cookie ou session” ai eu já não sei fazer. O script que eu modifiquei esta abaixo até ai esta certo?

config.inc

<%
'///////////////////////////////////////////////////////////////////////////////////
'connection string

Dim Conexao
Set Conexao = Server.CreateObject("ADODB.Connection") 
Conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("Login.mdb ")

'////////////////////////////////////////////////////////////////////////////////////
%>
PAGINA 1.asp
<html>
<head>
<title>RE</title>
</head>
<body>
<Form name="avaliacao" action="2.asp" method="get">
  <input type="Text" name="RE" value="" onChange="java script:window.document.avaliacao.submit();">  
<INPUT type="submit" value="entrar" name="botao">
</Form>
</body>
</html>
PAGINA 2.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
    SQL = "Select * From Login where re = " & Request.QueryString("RE") & " Order By ID"
Set RS = MyConn.Execute(SQL)
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

agora pra mim deu esse erro aqui na sua pagina:

Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/teste/dois.asp, line 8

se você ta usando o mesmo codigo q você postou aqui, acho q significa q ou o campo RE ou o campo ID ou os dois NÃO EXISTEM na tabela Login.

de uma olhada ai e ponha os nomes certos. alias, se você vai fazer o select pra selecionar só um registro, então pra q o Order By?? tire o Order By do Select.

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal eu sei que estou sendo muito irritante mais realmente preciso fazer isto acontecer sabe eu tive um reunião e os caras estão me cobrando. Kuroi e bareta Muito obriga mesmo estão dando uma força. Bom o erro continua eu print o arquivo .mdb e o erro que aparece para mim aqui. O código que estou usando esta abaixo e esta hospedado na url http://www.webmonter.com/teste/ .

login.mdb

Untitled-1.gif

config.inc

<%
'///////////////////////////////////////////////////////////////////////////////////
'connection string
Dim Conexao
Set Conexao = Server.CreateObject("ADODB.Connection") 
Conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("Login.mdb ")

'///////////////////////////////////////////////////////////////////////////////////
%>
default.asp
<html>
<head>
<title>RE</title>
</head>
<body>
<Form name="avaliacao" action="2.asp" method="get">
  <input type="Text" name="RE" value="" onChange="java script:window.document.avaliacao.submit();">  
<INPUT type="submit" value="entrar" name="botao">
</Form>
</body>
</html>
dois.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#INCLUDE FILE="config.inc"-->
<html>
<head>
<title>prova</title>
<%
    SQL = "Select * From Login where re = " & Request.QueryString("RE") & ""
Set RS = MyConn.Execute(SQL)
  %>
</head>
<body>
<input type="text" name="" value="<%=RS("RE")%>">


</body>
</html>

Erro

Untitled-2.gif

Link para o comentário
Compartilhar em outros sites

  • 0

o q acontece se você clicar em mais informacoes??

o problema é q ele não ta te mostrando a mensagem do erro, isso deve ser alguma configuracao do servidor.

sem a mensagem fica dificil saber o q é.

antes a mensagem aparecia pra mim, mas agora ta aparecendo só HTTP/1.1 500 Server Error

ve se, se você clicar em mais informacoes ele mostra alguma coisa a mais, ou se você encontra alguma configuracao do iis q resolva isso.

alias, você esta fazendo isso localmente?? esse endereco q você passa, você tem acesso a ele localmente ou é um servidor pago??

se for um servidor pago, entre em contato com eles e fala q você quer q mostre a descricao do erro.

Link para o comentário
Compartilhar em outros sites

  • 0

Sim é um domínio pago da web http://www.redehost.com.br/ e quando eu clico em mais informações ele me mostra o seguinte descrição.

Esse erro (HTTP 500 Erro Interno do Servidor) significa que o site visitado teve um problema no servidor que impediu a exibição da página da Web.

Para obter mais informações sobre erros de HTTP, consulte a Ajuda.

Link para o comentário
Compartilhar em outros sites

  • 0

então entre em contato com o seu servidor e fale pra eles q ta dando "erro interno do servidor" no seu site.

hum... to vendo agora... essa pagina q aparece pra você é a pagina de erro do seu explorer seja la q versao for ele (como não uso não conheco). porque olhei aqui e no firefox ele simplesmente diz HTTP/1.1 500 Server Error mas no ie6 ele mostra a pagina de erro do ie6.

mas você não ta trabalhando tb no localhost?? tipo antes de upar no servidor você não testa localmente?? quando você abre localmente, qual o erro q da, é o mesmo??

porque acredito q isso seja erro no servidor e não na programacao.

então, caso você trabalhe tb no localhost, tenta ver o q acontece localmente ai.

caso não chegue a nenhuma conclusao, então entra em contato com os caras e fala pra eles q ta dando "erro interno do servidor".

se eles responderem q é erro de programacao então fala q você quer q eles liberem pra aparecer a mensagem de erro do webserver retornada pelo proprio asp pra poder saber qual é o erro.

mas acho q nesse caso é mesmo erro do servidor, porque como eu disse nesse post: http://scriptbrasil.com.br/forum/index.php...st&p=460766 e nesse: http://scriptbrasil.com.br/forum/index.php...st&p=461382 pra mim aparecia sim antes a mensagem de erro do Asp, só não sei porque pra você não aparecia, talvez seja a configuracao do seu navegador.

e, caso o erro de agora seja mesmo de programacao e não do servidor, não tem sentido parar de aparecer a mensagem do Asp pra mim.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Visitante

Eu liguei na redehost e eles falaram para criar um arquivo web.config no diretório. Como eu nunca tinha feito eu procurei na web e achei um exemplo. Mias não sei esta certo.

Web.Config

<!-- Web.Config Configuration File --> 
<configuration> 
<system.web> 
<customErrors mode="Off"/> 
</system.web> 
</configuration>

Link para o comentário
Compartilhar em outros sites

  • 0

ue, web.config não é so pra asp.net não??

acho q não vai funcionar no asp não, pelo menos eu nunca tinha ouvido falar de webconfig pra asp, é só pra asp.net.

ve isso direito com eles.

mas e quanto ao q eu disse no otro post?? você não ta trabalhando localmente (no localhost) antes de upar??

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...