Ir para conteúdo

POWERED BY:

Arquivado

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

daniel.

[Resolvido] Form insere dados em branco

Recommended Posts

Eai pessoa? beleza?

É o seguinte, eu tenho duas paginas em asp, uma que o cara digita os valores e a outra que insere no banco, ate ai tudo bem

o problema é que está inserindo em branco no banco, mas aparece a linha do registro

 

Segue o codigo

 

inserirvenda.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Home</title>
<style type="text/css">
<!--
body,td,th {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 14px;
}
.r1 {
	text-align: right;
}
.r1 {
	text-align: right;
}
.r1 {
	text-align: right;
}
-->
</style></head>

<body>
<table width="800" height="400" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td background="images/layout_r3_c1.gif"><table width="800" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="50"> </td>
        <td height="50"> </td>
        <td width="50"> </td>
      </tr>
      <tr>
        <td width="50"> </td>
        <td width="700" height="300"><table width="700" height="300" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="170" height="90" class="r1">Nome do produto:</td>
            <td height="90"><input type="text" name="produto" style="width:300px" /></td>
          </tr>
          <tr>
            <td width="170" height="90" class="r1">Detalhes do produto:</td>
            <td height="90" width="520"><textarea style="width:300px; height:150" name="detalhe"></textarea></td>
          </tr>
          <tr>
            <td width="170" height="90" class="r1">Valor:</td>
            <td height="90 width="520""><input type="text" name="preco" style="width:300px" /></td>
          </tr>
          <tr>
            <td height="30" width="170"> </td>
            <td height="30" width="520"><form method="post" action="enviarvenda.asp" "/>
              <input type="submit" value="Registrar o produto" style="width:200px"/>
              </form> </td>
          </tr>
        </table></td>
        <td  width="50"> </td>
      </tr>
      <tr>
        <td width="50"> </td>
        <td height="50"> </td>
        <td width="50"> </td>
      </tr>
    </table></td>
  </tr>
</table>
</body>
</html>

enviarvenda.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
</body>
</html>

<%
if temp = true then
 
 response.Redirect("index.asp")
 
else

'requerindo as variaveis
produto = Request.Form("produto")
detalhe = Request.Form("detalhe")
preco = Request.Form("preco")

Set cnConexao = Server.CreateObject("ADODB.Connection")
cnConexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("banco/banco.mdb")&";"

Set add_action = Server.CreateObject ("ADODB.Recordset")

add_action.Open "venda",cnConexao,3,3


add_action.AddNew

add_action("produto") = produto
add_action("preco") = preco
add_action("detalhe") = detalhe


add_action.Update

add_action.Close
cnConexao.Close


Set add_action = Nothing
Set cnConexao = Nothing

end if
%>

 

alias, alguem aqui sabe como editar os dados do banco de dados numa pagina em asp, por exemplo para um usuario editar sua senha ou usuario?

 

se alguem puder ajudar eu agradeço

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ???

se sim poste o numero do erro e linha

e dê um response.write no seu Request.Form("preco")para ver o k esta sendo passado

 

response.write(Request.Form("preco"))

response.end()

 

é melhor utilizar a clausula INSERT do SQL

set rsinsert=server.createobject("ADODB.Recordset")

 

'requerindo as variaveis
produto = Request.Form("produto")
detalhe = Request.Form("detalhe")
preco = Request.Form("preco"
		'crio o SQLinsert pra incluir no bd
		SQLinsert="INSERT INTO tabela(produto,detalhe,preco) values('"&produto&"','"&detalhe&"','"&preco&"')"
		rsinsert.open SQLinsert,conexao,1,3

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ???

se sim poste o numero do erro e linha

e dê um response.write no seu Request.Form("preco")para ver o k esta sendo passado

 

response.write(Request.Form("preco"))

response.end()

 

é melhor utilizar a clausula INSERT do SQL

set rsinsert=server.createobject("ADODB.Recordset")

 

'requerindo as variaveis
produto = Request.Form("produto")
detalhe = Request.Form("detalhe")
preco = Request.Form("preco"
		'crio o SQLinsert pra incluir no bd
		SQLinsert="INSERT INTO tabela(produto,detalhe,preco) values('"&produto&"','"&detalhe&"','"&preco&"')"
		rsinsert.open SQLinsert,conexao,1,3

eai cra? beleza?

 

eu dei o response.write na variavel preco e nao exibiu nada.

 

eu o codigo que você me passou gerou um erro

 

Script error detected at line 29.

Source line: rsinsert.open SQLinsert,conexao,1,3

Description: Objeto necess�rio: 'rsinsert'

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

naun esta sendo passado os dados do form

e o erro foi gerado devido você precisar criar o objeto recordset, olha este exemplo

 

<% constring="provider=microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("db/seu_banco.mdb")
Set conexao=Server.CreateObject("ADODB.Connection")
conexao.open constring

   set rsselect=server.createobject("ADODB.Recordset")
   		'crio o rsinsert para inseiri os dados no bd
   		 set rsinsert=server.createobject("ADODB.Recordset")
		'crio o SQLinsert pra incluir no bd
		SQLinsert="INSERT INTO tabela(produto,detalhe,preco) values('"&produto&"','"&detalhe&"','"&preco&"')"
		rsinsert.open SQLinsert,conexao,1,3

Compartilhar este post


Link para o post
Compartilhar em outros sites

naun esta sendo passado os dados do form

e o erro foi gerado devido você precisar criar o objeto recordset, olha este exemplo

 

<% constring="provider=microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("db/seu_banco.mdb")
Set conexao=Server.CreateObject("ADODB.Connection")
conexao.open constring

   set rsselect=server.createobject("ADODB.Recordset")
   		'crio o rsinsert para inseiri os dados no bd
   		 set rsinsert=server.createobject("ADODB.Recordset")
		'crio o SQLinsert pra incluir no bd
		SQLinsert="INSERT INTO tabela(produto,detalhe,preco) values('"&produto&"','"&detalhe&"','"&preco&"')"
		rsinsert.open SQLinsert,conexao,1,3

pq sera naum esta passando os dados do form, nunca aconteceu aqui antes

Compartilhar este post


Link para o post
Compartilhar em outros sites

estranho, tenmte criar outro campo , para teste

 

olha este exemplo, onde antes de inserir eu verifico se ja existe os dados no banco

 

form

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="3">:: 
</font><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="2">Cadastro 
de Login</font><font face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF" size="3"> 
</font></b></div></td></tr> <tr bgcolor="#336699"> <td height="5" colspan="2"> </td></tr> 
<tr bgcolor="#e6e6e6"> <td height="163" colspan="2"> <form name="form1" method="post" action="incluir_action_treina.asp"> 
<table width="99%" border="0" bordercolor="#e6e6e6"> <tr> <td><b><font color="#336699" size="1" face="Verdana, Arial, Helvetica, sans-serif">Entre 
com o login: <input type="text" name="login" size="12" maxlength="12"> </font></b></td></tr> 
<tr> <td height="12" bordercolor="0"><b><font color="#336699" size="1" face="Verdana, Arial, Helvetica, sans-serif">Entre 
com sua senha: <input type="password" name="senha" size="8" value="" maxlength="8"> 
</font></b></td></tr> <tr> <td bordercolor="0"><b><font color="#336699" size="1" face="Verdana, Arial, Helvetica, sans-serif">Entre 
com o email: <input type="text" name="email" size="48" maxlength="48"> </font></b></td></tr> 
<tr> <td bordercolor="0"> <div align="center"> 
                <input type="image" border="0" name="imageField" src="imgs/enviar.gif" width="87" height="22" align="middle"> 
</div></td></tr> </table></form></td></tr> </table>
<p> </p>
</body>
</html>

action

<%   
   Option explicit
   'declaro as var
   dim varlogin, varemail, varsenha, conexao, conDBQ, constring, rsselect, SQLselect, rsinsert, SQLinsert
   'recupero todos os dados
   varlogin=trim(request.form("login"))
   varsenha=trim(request.form("senha"))
   varemail=trim(request.form("email"))
   'crio a conexao
   %>
   <!--#include file="conn/conexao1.asp"-->
   <% 'abrir a conexao
   call abreconexao
   'crio o rsselect para verificar se os dados jah estaun cadastrados
   set rsselect=server.createobject("ADODB.Recordset")
   'crio o SQLselect
   SQLselect="SELECT login FROM login WHERE login='"&varlogin&"'"
   rsselect.open SQLselect,conexao,1,3
   if not rsselect.eof then
   		response.redirect("incluir_form_treina.asp?msgeof=1")
		set rsselect=nothing
   else	
   		'crio o rsinsert para inseiri os dados no bd
   		 set rsinsert=server.createobject("ADODB.Recordset")
		'crio o SQLinsert pra incluir no bd
		SQLinsert="INSERT INTO login(login,senha,email) values('"&varlogin&"','"&varsenha&"','"&varemail&"')"
		rsinsert.open SQLinsert,conexao,1,3
		response.redirect("administracao_treina.asp?msg=1")
		set rsinsert=nothing
	end if 
	call fechaconexao %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia pelo que me parece você não abriu o seu formulário tente assim::

 

<form name="form1" method="post" action="enviarvenda.asp">
<table width="800" height="400" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td background="images/layout_r3_c1.gif"><table width="800" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="50"> </td>
        <td height="50"> </td>
        <td width="50"> </td>
      </tr>
      <tr>
        <td width="50"> </td>
        <td width="700" height="300"><table width="700" height="300" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="170" height="90" class="r1">Nome do produto:</td>
            <td height="90"><input type="text" name="produto" style="width:300px" /></td>
          </tr>
          <tr>
            <td width="170" height="90" class="r1">Detalhes do produto:</td>
            <td height="90" width="520"><textarea style="width:300px; height:150" name="detalhe"></textarea></td>
          </tr>
          <tr>
            <td width="170" height="90" class="r1">Valor:</td>
            <td height="90 width="520""><input type="text" name="preco" style="width:300px" /></td>
          </tr>
          <tr>
            <td height="30" width="170"> </td>
            <td height="30" width="520"><form method="post" action="enviarvenda.asp" "/>
              <input type="submit" value="Registrar o produto" style="width:200px"/>
             </td>
          </tr>
        </table></td>
        <td  width="50"> </td>
      </tr>
      <tr>
        <td width="50"> </td>
        <td height="50"> </td>
        <td width="50"> </td>
      </tr>
    </table></td>
  </tr>
</table>
</body>
</html>
</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

segue o exemplo k postei , k dá certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza

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.