Ir para conteúdo

POWERED BY:

Arquivado

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

Alex Galindo

inserir dados em uma tabela

Recommended Posts

Tenho um arquivo que se chama: teste.asp

 

<html>

<head>

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

<title>Untitled Document</title>

</head>

 

<body>

 

<form name="aspacc" method="post" action="inserir.asp">

Título: <input type=text name=titulo><br>

Noticia: <input type=text name=noticia><br>

Autor da Noticia: <input type=text name=autor><br>

<input type=submit value=Enviar>

</form>

 

</body>

</html>

____________________________________________

 

 

E outro: resultado.asp

 

<%

titu = Request.form("titulo")

noticia = Request.form("noticia")

autor = Request.form("autor")

if len(titu)=0 or len(noticia)=0 or len(autor)=0 then

response.write("Preencha todos os campos")

else

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

caminho = "./dados/dados.mdb"

banco.open "DBQ="& Server.MapPath(caminho) &",DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD="

data = date

set INSE = Banco.Execute("INSERT INTO noticias (titulo,data,noticia,autor) VALUES ('"& titulo &"',"& data &",'"& noticia &"','"& autor &"')")

reponse.write("Notícia enviada com sucesso")

banco.close

%>

 

__obs: Ta dando erro no final na linha "banco.close" __________________________________________________________

Meu Banco é em access!

Está Assim:

 

abri o Access e criei um banco com o nome dados.mdb e criei uma tabela com o nome noticias, a tabela possuir os seguintes campos:

 

. Código - Auto-numeração - Chave primária;

. Autor - Texto - 50 caracteres;

. Notícia - Memorando;

. Data - Data;

. Títuto - Texto - 50 caracteres.

 

OBS: ESSE É O TIPO DE ERRO QUE TA DANDO!

 

Tipo de erro:

Erro de compilação do Microsoft VBScript (0x800A03F6)

'End' esperado

/testes/cadasp/prova/inserir.asp, line 14

 

Se alguem por favor puder me ajudar!

Grato desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem alguma estrutura que voce abriu e nao fechou como um IF ou um laço de repeticao

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está exatamente como eu coloquei no topico

Não estou conseguindo achar o erro, está tão simples o codigo e não consigo rodar!

Já to uns 3 dias ja nessa!Desespero já!heheh!

obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

como esta este seu inciio de codigo

 

sim tem que fechar

 

continuou o mesmo erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudou o erro agora!beleza !

agora ta dando erro na linha 10

ESSE ERRO AGORA

 

Nome da fonte de dados não encontrado e nenhum driver padrão especificado

Nessa linha:

banco.open "DBQ="& Server.MapPath(caminho) &",DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD="

 

 

 

 

Meu codigo que ta la e esse:

 

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

caminho = "./dados/dados.mdb"

banco.open "DBQ="& Server.MapPath(caminho) &",DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD="

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao ta encontrando o db

 

esta pasta dados está na raiz?

 

se sim faça

 

caminho = "/dados/dados.mdb"

 

sem aquele ponto

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja criei o caminho virtual na pasta prova

joguei o banco agora dentro de prova (caminho virtual)

 

Coloquei agora o caminho inteiro :

 

caminho = "c:/inetpub/wwwroot/testes/cadasp/prova/dados.mdb"

 

Ele ta dando esse erro agora:

 

Tipo de erro:

Server.MapPath(), ASP 0172 (0x80004005)

O parâmetro Path para o método MapPath deve ser um caminho virtual. Um caminho físico foi usado.

/testes/cadasp/prova/inserir.asp, line 10

 

Mas o caminho virtual ja foi criado e na pasta prova.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso eh erro do caminho do Banco ...

 

o Server.MapPath() .. significa que ele vai usar o caminho em que se encontra a Pag.ASP, ou seja, coloque o Bando de Dados, na pasta onde esta a Pag.ASP e rode, que vai funcinar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E o erro que ele me da e q eu estou usando o caminho fisico e nao o virtual.

 

ASSIM :

 

Server.MapPath(), ASP 0172 (0x80004005)

O parâmetro Path para o método MapPath deve ser um caminho virtual. Um caminho físico foi usado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é porque ou usa o Server.MapPath() com o caminho relativo ou usa o fisico direto

 

nao pode colocar o fisico no Server.MapPath()

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gente ainda não consegui inserir dados na tabela, me salvem por favor!

meu banco:

Código - Auto-numeração - Chave primária;

. Autor - Texto - 50 caracteres;

. Notícia - Texto - 50 caracteres.

. Data - Data;

. Títuto - Texto - 50 caracteres.

 

pagina teste.asp

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

<body>

<form name="aspacc" method="post" action="inserir.asp">
Título: <input type=text name=titulo><br>
Noticia: <input type=text name=noticia><br>
Autor da Noticia: <input type=text name=autor><br>
<input type=submit value=Enviar>
</form>

</body>
</html>

pagina inserir.asp

<%
titu = Request.form("titulo")
noticia = Request.form("noticia")
autor = Request.form("autor")
if len(titu)=0 or len(noticia)=0 or len(autor)=0 then
response.write("Preencha todos os campos")
else
set banco = Server.CreateObject("ADODB.Connection")
'Dim caminho
Dim banco
'caminho = "testes/dados.mdb"
banco.open "DBQ="& Server.MapPath("dados.mdb") &",DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD="
data = date
set INSE = Banco.Execute("INSERT INTO noticias (titulo,data,noticia,autor) VALUES ('"& titulo &"',"& data &",'"& noticia &"','"& autor &"')")
reponse.write("Notícia enviada com sucesso")
End if
banco.close
%>

caminho fisico: c:inetpub/wwwroot/testes/testes.asp

 

erro nessa linha:

set INSE = Banco.Execute("INSERT INTO noticias (titulo,data,noticia,autor) VALUES ('"& titulo &"',"& data &",'"& noticia &"','"& autor &"')")

 

ele não acha a fonte de dados mais o banco ta criado certo e acho q o codigo tb está certo, então porque isso nao roda!!!

 

Se puderem me ajudar? Não sei mais o q fazer, sem idéias ja! Grato!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque o seu trecho: banco.open "DBQ="& Server.MapPath("dados.mdb") &",DRIVER={Microsoft Access Driver (*.mdb)};UID=;PWD="

Por esse e teste:

banco.open "Driver={Microsoft Access Driver (*.mdb)};Dbq="& Server.MapPath("dados.mdb") &";"

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.