Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

nickian

::como inserir + itens::

Recommended Posts

Olá Pessoal,

 

fiz um formulário em asp e um bco. de dados em access para o mesmo.

Contendo os seguintes itens: nome, email, idade, bairro,sexo, estado.

Porém gostaria de retirar "idade" e colocar a DATA DE NASCIMENTO no lugar e acrescentar mais um item que seria PROFISSAO.

Tentei fazer essa alteração, tanto no código da pagina como no bco. de dados. Mas quando vou testar o formulário, ele dá erro 500 do servidor interno.

É muito complicado fazer essas alteraçoes ? Tem que ter algum outro código ? O meu é o abaixo, sendo que sem as alteraçoes:

++++++++++++++++++++++++++++++++++++++++++++++++++++++

<%

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

conexao.Open "DBQ=" & Server.MapPath("ContatosCezarLiper.mdb") &";driver={microsoft Access Driver (*.mdb)}"

nome = Request.Form("Nome")

email = Request.Form("email")

idade = Request.Form("Idade")

bairro = Request.Form("Bairro")

estado = Request.Form("Estado")

sexo = Request.Form("Sexo")

sql = "insert into contatos(nome,email,bairro,idade,estado,sexo) values('"&nome&"','"&email&"','"&bairro&"',"&idade&",'"&estado&"','"&sexo&"')"

Conexao.Execute(sql)

Conexao.Close

Set Conexao = Nothing

%>

<html>

<head>

<title>Inclusão de Cadastro</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script language="JavaScript" type="text/JavaScript">

<!--++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

Obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos 1º descobrir qual é o erro, nas opções de seu browser desabilite a opção "exibir erros HTTP amigáveis", assim teremos uma melhor descrição desse erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi, segue o codigo com os itens alterados e o erro:

 

+++++++++++++++++++++++++++++++++++++++++++++++++

 

<%

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

conexao.Open "DBQ=" & Server.MapPath("ContatosCezarLiper.mdb") &";driver={microsoft Access Driver (*.mdb)}"

nome = Request.Form("Nome")

email = Request.Form("email")

datadenascimento = Request.Form("Data de Nascimento")

bairro = Request.Form("Bairro")

estado = Request.Form("Estado")

profissao = Request.Form("Profissao")

sexo = Request.Form("Sexo")

sql = "insert into contatos(nome,email,bairro,datadenascimento,estado,profissao,sexo) values('"&nome&"','"&email&"','"&bairro&"',"&datadenascimento&",'"&estado&"','"&profissao&"''"&sexo&"')"

Conexao. Execute(sql) MINHA LINHA 12 DO ERRO

Conexao.Close

Set Conexao = Nothing

%>

+++++++++++++++++++++++++++++++++++++++++++++++++++++

 

O ERRO:

 

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

 

[Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.

 

/isv/Cadastrado.asp, line 12

 

 

mui grata.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá .. aparentemente o erro é simples .....

 

provavelmente você esqueceu de colocar o Set recordset = ... vamos lá :

 

<%

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

conexao.Open "DBQ=" & Server.MapPath("ContatosCezarLiper.mdb") &";driver={microsoft Access Driver (*.mdb)}"

nome = Request.Form("Nome")

email = Request.Form("email")

datadenascimento = Request.Form("Data de Nascimento")

bairro = Request.Form("Bairro")

estado = Request.Form("Estado")

profissao = Request.Form("Profissao")

sexo = Request.Form("Sexo")

sql = "insert into contatos(nome,email,bairro,datadenascimento,estado,profissao,sexo) values('"&nome&"','"&email&"','"&bairro&"',"&datadenascimento&",'"&estado&"','"&profissao&"''"&sexo&"')"

Set rsInsert = Conexao. Execute(sql) 'MINHA LINHA 12 DO ERRO

 

E uma dica ... nunca feche o RECORDSET em um Update e Insert, apenas destrua o objeto com :

Set rsInsert = Nothing

Conexao.Close

Set Conexao = Nothing

%>

 

 

outra coisa .... antes de executar o SQL de um response.write ( strngSQL ) para executá-la diretamente no Modo SQL do Access .... se tiver algum erro .. é mais fácil achar lá ... e se tiver ... é só alterar .... caso cotnrário e ír pra galera. B)

 

Se quiser melhorar um pouco mais ... faça um tratamento para ASPAS Simples .... desta forma :

nome = Replace(Request.Form("Nome"), "'") ..... e assim sucessivamente

 

Bom .. .acho que é só ... caso alguém tenha mais alguma contribuição ..... manda ver aí .....

 

 

Espero ter ajudado ...

 

 

Fuiiiiiiiiiiiiiiiiiiiiii

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%

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

conexao.Open "DBQ=" & Server.MapPath("ContatosCezarLiper.mdb") &";driver={microsoft Access Driver (*.mdb)}"

nome = Request.Form("Nome")

email = Request.Form("email")

datadenascimento = Request.Form("Data de Nascimento")

bairro = Request.Form("Bairro")

estado = Request.Form("Estado")

profissao = Request.Form("Profissao")

sexo = Request.Form("Sexo")

sql = "insert into contatos(nome,email,bairro,datadenascimento,estado,profissao,sexo) values('"&nome&"','"&email&"','"&bairro&"',"&datadenascimento&",'"&estado&"','"&profissao&"''"&sexo&"')"

Conexao. Execute(sql)                    MINHA LINHA 12 DO ERRO

Conexao.Close

Set Conexao = Nothing

%>[/color]

+++++++++++++++++++++++++++++++++++++++++++++++++++++

 

O ERRO:

 

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

 

[Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.

 

/isv/Cadastrado.asp, line 12

 

 

mui grata.

No seu insert você se esqueceu de colocar uma vírgula dá uma olhada entre as variáveis profissão e sexo.

 

 

sql = "insert into contatos(nome,email,bairro,datadenascimento,estado,profissao,sexo) values('"&nome&"','"&email&"','"&bairro&"',"&datadenascimento&",'"&estado&"','"&profissao&"','"&sexo&"')"

Conexao. Execute(sql)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

tentei colocar o que estava faltando, como pode ver abaixo, sendo que quando tento me cadastrar a pagina do codigo que confirma o cadastro nao abre, a conexao fica LENTISSIMA (apesar de ser banda larga), o que pode ser ? Aparece o erro: """"Servidor não encontrado ou erro de DNS

Internet Explorer """"

+++++++++++++++++++++++++++++++++++++++++++

sql = "insert into contatos(nome,email,bairro,data de nascimento,estado,profissao,sexo) values('"&nome&"','"&email&"','"&bairro&"','"&datadenascimento&"','"&estado&"','"&profissao&"','"&sexo&"')"

Set rsInsert =Conexao.Execute(sql)

Set rsInsert = Nothing

Conexao.Close

Set Conexao = Nothing

%>

++++++++++++++++++++++++++++++++++++++++++++++

 

Mais uma vez obrigada e desculpe a amolação!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.