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

Acesso A Bd


rodfraga

Pergunta

Fala pessoal de ASP!

Olha só, eu to com um projeto com uns amigos meus de um centro lá da vida, em que a gente decidiu fazer um comunicador(programa chat) em VB para apresentar no IMPA. então, eu dei umas idéias, e decidimos fazer assim:

O usuário faria o download no site e faria o cadastro no site feito em ASP. então o registro do maluco que se cadastrou ia ficar num banco de dados na internet, na nossa página. então o programa que o cara baixou, na hora que ele conectasse ia verificar se ele tava online e ia pedir pro banco de dados online registros e verificaria se ele tinha dado senha certa. Essa ultima parte, eu to tirando duvida com o pessoal de VB, mas achei legal aqui dizer como funciona tudo.

então, eu criei uma pagina ASP que cadastrasse em um banco os dados do cliente, só que quando o usuário clica em cadastrar, o cadastro não é feito e o browser não carrega a pagina de confirmação. Quanto ao link com a pagina creio que seja um erro basico, pois nunca mexi com formularios muito. Agora não sei por que o cadastro não é feito! eu vou botar aqui o código da página.

<html>
<head><title>Cadastrando no Ecom</title>
<script language="VBScript">
Dados="ecom.mdb"
cn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/inetpub/wwwroot/ecom/" & Dados
set rs = server.createobject("ADODB.Recordset")
Private Sub con_CLICK()
sql = "insert into users (Email, Username, Password, Primeiro, Ultimo ) "
  sql = sql & "values (form.email.value, form.username.value, form.password.value, form.primeiro.value, form.ultimo.value)"
rs.Open sql, cn
End Sub
</script>
</head>
<body><center>
<form method="post" action="confirma.asp" name="form">
<font face="Arial" color="blue" size="3">
Para efetuar o cadastro no sistema ECom, preencha os dados abaixo:
<br>
<br></font><font face="Arial" color="blue" size="2">
UserName: <input type="text" name="username" value="">
<br>
Senha: <input type="text" name="password" value="">
<br>
Email: <input type="text" name="email" value="">
<br>
Primeiro Nome: <input type="text" name="primeiro" value="">
<br>
Último Nome: <input type="text" name="ultimo" value="">
<br>
<br>
<input type="button" name="con" value="Cadastrar">
<br><br>
<br><br></body></html>

não sei onde estao os erros. blink.gif Esse código tem base em um artigo do Macoratti(www.macoratti.net) .

Voces poderiam me ajudar?

Desde já agradeço

Abraços

Link para o comentário
Compartilhar em outros sites

23 respostass a esta questão

Posts Recomendados

  • 0

Brother!!!

Veja:

Dados="ecom.mdb"

Este é seu banco de dados ? Esta dentro do mesmo diretorio dos arquivos ASP ?

Se for, exeperimente esta string de conexão:

cBanco = Server.MapPath("ecom.mdb")
cn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& cBanco &";"

smile.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Tentei fazer o que voce falou, mas não deu.

Ficou assim:

<html>
<head><title>Cadastrando no Ecom</title>
<script language="VBScript">
cBanco = Server.MapPath("ecom.mdb")
cn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& cBanco &""
set rs = server.createobject("ADODB.Recordset")
Private Sub con_CLICK()
sql = "insert into users (Email, Username, Password, Primeiro, Ultimo ) "
  sql = sql & "values (form.email.value, form.username.value, form.password.value, form.primeiro.value, form.ultimo.value)"
rs.Open sql, cn
End Sub
</script>
</head>
<body><center>
<form method="post" action="confirma.asp" name="form">
<font face="Arial" color="blue" size="3">
Para efetuar o cadastro no sistema ECom, preencha os dados abaixo:
<br>
<br></font><font face="Arial" color="blue" size="2">
UserName: <input type="text" name="username" value="">
<br>
Senha: <input type="text" name="password" value="">
<br>
Email: <input type="text" name="email" value="">
<br>
Primeiro Nome: <input type="text" name="primeiro" value="">
<br>
Último Nome: <input type="text" name="ultimo" value="">
<br>
<br>
<input type="button" name="con" value="Cadastrar">
<br><br>
ECom é propriedade da Eagle Team(C-2004).<br><br></body></html>

E continua não gravando dados nem indo pra confirma.asp

sad.gif

alguém me ajude, ta dificil

Obrigado

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Email = Request("Email")
username = Request("username")
password = Request("password")
Primeiro = Request("primeiro")
Ultimo = Request("ultimo")

SQL_DO_URSO = "INSERT INTO users(Email, Username, Password, Primeiro, Ultimo) VALUES (email, username, password, primeiro, ultimo)

Tenta ai ... e coloca a @#$%¨&*()_ da mensagem de erro....#$%¨&*()

Link para o comentário
Compartilhar em outros sites

  • 0

<html>
<head><title>Cadastrando no Ecom</title>
<script language="VBScript">
cBanco = Server.MapPath("ecom.mdb")
cn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& cBanco &""
set rs = server.createobject("ADODB.Recordset")
Private Sub con_CLICK()
Email = Request("Email")
Username = Request("username")
Password = Request("password")
Primeiro = Request("primeiro")
Ultimo = Request("ultimo")
SQL_DO_URSO = "INSERT INTO users(Email, Username, Password, Primeiro, Ultimo) VALUES (Email, Username, Password, Primeiro, Ultimo)"
rs.Open SQL_DO_URSO, cn
End Sub
</script>
</head>
<body><center>
<form method="post" action="confirma.asp" name="form">
<font face="Arial" color="blue" size="3">
Para efetuar o cadastro no sistema ECom, preencha os dados abaixo:
<br>
<br></font><font face="Arial" color="blue" size="2">
UserName: <input type="text" name="username" value="">
<br>
Senha: <input type="text" name="password" value="">
<br>
Email: <input type="text" name="email" value="">
<br>
Primeiro Nome: <input type="text" name="primeiro" value="">
<br>
Último Nome: <input type="text" name="ultimo" value="">
<br>
<br>
<input type="button" name="con" value="Cadastrar">
<br><br>
ECom é propriedade da Eagle Team(C-2004).<br><br></body></html>

não grava, não passa de pagina e ainda, na statusbar, aparece "Concluído, mas contem erros na página".

Nossa, ta complicado...Eu to tentando procurar fontes pra resolver mas não consigo. Conto com os feras daqui. sad.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Repare bem nisso:

SQL_DO_URSO = "INSERT INTO users(Email, Username, Password, Primeiro, Ultimo) VALUES (Email, Username, Password, Primeiro, Ultimo)"

dry.gif

Qual é o seu nivel de conhecimento no asp?

Link para o comentário
Compartilhar em outros sites

  • 0

sql = "insert into users (Email, Username, Password, Primeiro, Ultimo ) "
 sql = sql & "values (form.email.value, form.username.value, form.password.value, form.primeiro.value, form.ultimo.value)"
rs.Open sql, cn

Creio que o erro esteja nessa parte do primeiro codigo que postei...

não sei...

alguém poderia me ajudar? blink.gif

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Ok, vamos lá, vamos ver se sou esperto o bastante...

Dentro do seu banco de dados, faz uma consulta com o o seguinte nome:

Insere_Cadastro

Abra ela no modo SQL, copie e cole este código aqui...

INSERT INTO users ( Username, [Password], Email, Primeiro, Ultimo )
VALUES ([:Username], [:Password], [:Email], [:Primeiro], [:Ultimo]);
Agora, crie uma pagina com este nome: confirma_urso Copie e cole este código:
<!--#include file="adovbs.inc" -->
<html>
<head>
<title>v1.0 - Aos Pregui&ccedil;osos</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
p {
	font-family: Verdana;
	font-size: 10px;
	color: #000000;
}
-->
</style>
</head>
<%

	Acao = Request.Form("Acao")

	If Acao = "Cadastrar" Then	
  
  cBanco = Server.MapPath("ecom.mdb")
  strConn= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& cBanco &""
  Set Conn = Server.CreateObject("Adodb.connection")
  Conn.Open(strConn)
  	'Conectando no banco de dados
  
  Username = Request.Form("username")
  Password = Request.Form("password")
  Email = Request.Form("email")
  Primeiro = Request.Form("primeiro")
  Ultimo = Request.Form("ultimo")

  Set objCmd = Server.CreateObject("adodb.command")
  	With objCmd
    .ActiveConnection = Conn
    .CommandType = AdCmdStoredProc
    .CommandText = "Insere_Cadastro"
  	End With
  
  objCmd.Parameters.Append objCmd.CreateParameter(":Username", adVarChar, AdParamInput, 10, 1)  
  objCmd.Parameters.Append objCmd.CreateParameter(":PassWord", adVarChar, AdParamInput, 10, 2)
  objCmd.Parameters.Append objCmd.CreateParameter(":EMail", adVarChar, AdParamInput, 30, 3)
  objCmd.Parameters.Append objCmd.CreateParameter(":Primeiro", adVarChar, AdParamInput, 15, 4)
  objCmd.Parameters.Append objCmd.CreateParameter(":Ultimo", adVarChar, AdParamInput, 15, 5)
  objCmd(":Username") = Username
  objCmd(":Password") = Password
  objCmd(":Email") = Email
  objCmd(":Primeiro") = Primeiro
  objCmd(":Ultimo") = Ultimo
  
  objCmd.Execute	
  
  
  
  	If Err.Number <> 0 Then
    Response.Write(Err.Description)
  	Else
    Response.Redirect("Obrigado.html")
  	End if
  Conn.Close
  Set Conn = Nothing
	Else
%>
<body>
<table width="500" height="304" border="0" align="center" cellpadding="0" cellspacing="0">
  <form method="post" name="" action="confirma_urso.asp">
  <tr valign="middle"> 
    <td height="32" colspan="2"> 
      <p align="center"><strong>Para efetuar o cadastro no sistema ECom, preencha os 
        dados abaixo:</strong><font color="blue" size="3"> </font></p></td>
  </tr>
    <tr valign="middle"> 
    <td height="24" colspan="2">&nbsp;</td>
  </tr>
  <tr valign="middle"> 
    <td width="176" height="28">
<p align="right">Username:</p></td>
    <td width="324"><p> 
          <input name="username" type="text" id="username" size="10" maxlength="10">
      </p></td>
  </tr>
  <tr valign="middle"> 
    <td height="28">
<p align="right">Senha:</p></td>
    <td><p> 
          <input name="password" type="password" id="password" size="15" maxlength="10">
      </p></td>
  </tr>
  <tr valign="middle"> 
    <td height="28">
<p align="right">E-Mail:</p></td>
    <td><p> 
          <input name="email" type="text" id="email" maxlength="30">
      </p></td>
  </tr>
  <tr valign="middle"> 
    <td height="28">
<p align="right">Primeiro Nome:</p></td>
    <td><p> 
          <input name="primeiro" type="text" id="primeiro" maxlength="15">
      </p></td>
  </tr>
  <tr valign="middle"> 
    <td height="28">
<p align="right">Ultimo Nome:</p></td>
    <td><input name="ultimo" type="text" id="ultimo" maxlength="15"></td>
  </tr>
  <tr valign="middle"> 
    <td height="24" colspan="2">&nbsp;</td>
  </tr>
  <tr valign="middle"> 
      <td height="31" colspan="2"> <p align="center"> 
          <input type="submit" value="Cadastrar">
          <input name="Acao" type="hidden" id="Acao" value="Cadastrar">
        </p></td>
  </tr>
  <tr valign="middle"> 
    <td height="24" colspan="2">&nbsp;</td>
  </tr>
  <tr valign="middle"> 
    <td height="29" colspan="2">
<p align="center">ECom &eacute; propriedade da 
        Eagle Team (C-2004)</p></td>
  </tr>
</form>
</table>
</body>
</html>
<%
	End If
%>

OBS: não vou dizer que o arquivo "adovbs.inc" tem que estar no mesmo diretorio ...... e tambem não vou falar q sou preguiçoso.

Boa ?Sorte!!!

Link para o comentário
Compartilhar em outros sites

  • 0
Editado

editado o que? blink.gif

Ai guto se fui grosso contigo, foi mal, mas olha só. Por mais absurdo que seja o erro dentro de:

SQL_DO_URSO = "INSERT INTO users(Email, Username, Password, Primeiro, Ultimo) VALUES (Email, Username, Password, Primeiro, Ultimo)"

não consegui perceber... No máximo que posso adivinhar que seja seria que o pc poderia confundir os campos da tabela Email com por exemplo o valor Email na pagina. Mas não deve ser isso, pois tentei consertar e não deu certo.

Poxa, eu realmente preciso de ajuda. não ta dando certo. dry.gif

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Cara, já até fiz modificações, mas não ta entrando dados na tabela users. Inclusive, eu queria dados nela pro programa VB usar... rolleyes.gif

sad.gif Será que de um jeito mais simples não daria?

Abraços

Desisto!!! sad.gif

Este usuarios deste forum, me vencem pelo cansaço.

Veja a po@#$%¨do exemplo que criei aqui em casa pra mostar à todos que do jeito que disse, funciona, não só bem, como PERFEITAMENTE rapido. mad.gif

Download dos arquivos!!!

Link para o comentário
Compartilhar em outros sites

  • 0
baixissimo, mas creio que não seja isso que esta em questao... dry.gif

Ajuda por favor... sad.gif

Abraços

Desculpe, mas está em questão!!!

Pois precisamos saber mais ou menos o q você sabe pra poder saber por onde comecar a lhe ajudar/explicar.

E brother... pegue uns tutos de asp aí e dê uma olhada, pois o urso lhe ajudou de todas as maneiras, e com razão, ficou cansado/estressado.

Um abraço e bons estudos

biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Guto, como voce viu eu pedi desculpas depois...

Entendi voces mal... sad.gif

Eu tambem não quero estressar ninguém, de forma alguma. Mesmo nunca entrando nesse forum sempre soube que voce, o urso e o dark eram muito bons em asp, porque do urso por exemplo, até o pessoal de vb fala sacou? smile.gif Tambem não queria abusar de ninguém, tambem não queria cansar ninguém, mas é culpa minha se não sai como deveria sair? E tambem não quero criar caso, mas agora, eu fiz o download dos arquivos do urso pra acabar logo com o stress, e devia dar certo né? Ou melhor, funcionar perfeitamente rápido como ele disse, em compensação:

Microsoft JET Database Engine error '80040e14'

Erro de sintaxe na instrução INSERT INTO.

/ecom/confirma.asp, line 15

Vai dizer que a culpa é minha? Eu cheguei ao ponto de baixar todos os arquivos e apenas rodar, como o urso passou, mas não funcionou. Repito, a culpa não é minha, não há por que voces ficarem stressados comigo.

Desculpa... sad.gif

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Brother's !!!

Muita calma nessa hora !!!

Tipow..

Acho, que não estamos aqui para discutir o quanto um sabe, e o quanto não sabe.

Muito menos o porque dos erros doidos, que ninguém sabe explicar.

Vamos ver.. Eu fiquei por fora o findi.. to voltando agora.. smile.gif

então..

Eu olhei seu código..

você fez ele usando VB, né?

Usando SUB.. bem bacana!

Mas o fato de não funcionar.. seria o que?

Ele diz que cadastra, mas não aparece nada?

Pelo que tá parecendo, o erro esta na hora que ele tenta executar a SUB, que faz o seu SQL..

Acho que nesse tipo de coisa, não é bom usar o modo: form.campo.value pra capturar dados digitados. Em asp, existe o objeto REQUEST para isso!

Provavelmente o erro esta por ai..

Mas, vamos por partes (pra depois esquartejar todo o problema.. hehe)

Eu fiz um exemplo aqui:

<%

url_conexao = Server.MapPath("banco.mdb")

set conexao = Server.CreateObject("ADODB.Connection")

conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao

if request("cadastrar") <> "" then

usuario = request.form("usuario")

senha = request.form("senha")

if usuario = "" or senha = "" then

  Response.Write "Preencha os campos com *!"

  Response.end

end if

sql = "insert into tabela (nome,senha)"

sql = sql & " values ("

sql = sql & "'" & usuario & "',"

sql = sql & "'" & senha & "')"

Set rs = Conexao.Execute(sql)

Response.Write "Usuario Cadastrado com sucesso!"

Response.End

else

%>

<html>

<body>

<form name="form1" method="post">

<div align="center">

<table border="1" width="60%">

  <tr>

  <td colspan="2">

  <p align="center">Cadastro de Usuários</td>

  </tr>

  <tr>

  <td width="20%" align="right">

  Usuário:</td>

  <td><input type="text" name="usuario" size="30"></td>

  </tr>

  <tr>

  <td width="20%" align="right">Senha:</td>

  <td><input type="password" name="senha" size="30"></td>

  </tr>

  <tr>

  <td colspan="2">

    <p align="center">

  <input type="submit" value="cadastrar" name="cadastrar"></td>

  </tr>

</table>

</div>

</form><br>

</body>

</html>

<%

end if

%>

isso seria um "cadastrar" basico!

Implemente pro seu modo..

Montei agora, pra quebrar galho.. mas não pude testar, porque meu IIS ta maluko!

testa ele aí..

depois vou dar uma olhada no seu codigo original.. que você diz não funcionar..

aquele que você montou, e não mecheu..

bons testes

PS: Sem stress galera.. não funcionou? Para.. apaga tudo.. cria tudo de novo..

até funcionar..

Abraços

Dark

Link para o comentário
Compartilhar em outros sites

  • 0

Isso ae!!!

No Stress...

Num post meu aki deste tópico eu tinha citado uma string sql...

Pois bem... vou mostrar como eu faria uma outra e se baseie no ex. (no do dark0 também biggrin.gif )

strSQL = "INSERT INTO nomeTabela (campo1,campo2) VALUES("&intVarCampo1&",'"&strVarCampo2&"')"
objConexao.Execute(strSQL)

t+

Link para o comentário
Compartilhar em outros sites

  • 0

Brother !!

Acabei de olhar seu codigo !

Eita..

os erros:

- a execução de SQL dentro de tag SCRIPT não funciona (sem ter nada de asp junto..)

- o modo como você estava resgatando os dados digitados estavam errados

- conexao tava meio estranha..

codigo corrigido:

<%

'testamos se foi clicado no botao cadastrar

if request("con") <> "" then

'conectamos ao banco

url_conexao = Server.MapPath("ecom.mdb")

set conexao = Server.CreateObject("ADODB.Connection")

conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&url_conexao

'pegamos os dados que foram digitados no form, e colocamos nas variaveis

Email = request("email")

Username = request("username")

Password = request("password")

Primeiro = request("primeiro")

Ultimo = request("ultimo")

'criamos o sql que vai inserir os dados..

sql = "insert into users (Email, Username, Password, Primeiro, Ultimo) values('"& Email &"', '"& Username &"', '"& Password &"', '"& Primeiro &"', '"& Ultimo &"')"

'executamos o sql

set rs = conexao.execute(sql)

'redirecionamos pra confirmação

response.redirect "obrigado.htm"

else%>

<html>

<head><title>Cadastrando no Ecom</title>

</head>

<body><center>

<form method="post" action="cad.asp" name="form">

<font face="Arial" color="blue" size="3">

Para efetuar o cadastro no sistema ECom, preencha os dados abaixo:

<br>

<br></font><font face="Arial" color="blue" size="2">

UserName: <input type="text" name="username" value="">

<br>

Senha: <input type="text" name="password" value="">

<br>

Email: <input type="text" name="email" value="">

<br>

Primeiro Nome: <input type="text" name="primeiro" value="">

<br>

Último Nome: <input type="text" name="ultimo" value="">

<br>

<br>

<input type="submit" name="con" value="Cadastrar">

<br><br>

<br><br></body></html>

<%

end if

%>

Bom:

- Eu comentei todo seu codigo, pra melhor entendê-lo.

- Tudo que está em AZUL, eu alterei/corrigi!

- Preste atenção na parte em vermelho. Coloque no action, o mesmo nome que você colocar nessa pagina aí.

Alguma duvida?:

É isso aí!

Abraços!

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado a todos. não tive tempo ainda de testar, mas vou faze-lo, de qualquer maneira, a atenção já é motivo de agradecimentos. E bareta, pode dexar que eu vou conferir esse link que tu botou.

E sim, dark(), eu fiz o codigo usando conceitos vb... tongue.gif

Obrigado e

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

hehe

eu vi..

então, cuida só uma coisa: asp não se baseia inteiramente em SCRIPTs.. ok?

na maioria das coisas, você tem que usar comandos asp mesmo.. e não só do vb!

abraços

Link para o comentário
Compartilhar em outros sites

  • 0
hehe

eu vi..

então, cuida só uma coisa: asp não se baseia inteiramente em SCRIPTs.. ok?

na maioria das coisas, você tem que usar comandos asp mesmo.. e não só do vb!

abraços

OK, obrigado mesmo.

Abraços

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
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...