Jump to content


Photo

Update E Variaves


  • Faça o login para participar
4 replies to this topic

#1 Rodrigo Thiago

Rodrigo Thiago

    Tava sumido mas voltei........

  • Usuários
  • 208 posts
  • Sexo:Não informado
  • Localidade:são josé dos campos - sp
  • Interesses:Musica, coldfusion, mulheres (nao necessariamente nesta ordem)

Posted 20/12/2005, 18:37

Galera seguinte, eu tenho 2 tabelas, uma se chama pedidos e outra pedidos_item.
A pessoa faz uma compra na loja e no administrativo do site eu apresento a compra para o propietario, porem ele tem como altera o valor dos produtos daquele cliente. O valor que ele altera é da tabela pedido_item e nao da tabela produtos, ou seja ele pode altera o valor do produto daquele pedido e nao do produto na loja.
Entao eu faço um select da tabela e faço um contator, para trazer todos os pedidos daquela pessoa, porem quando eu vou alterar o valores é que esta o problema, pois como´eu uso o "input type:text name="teste" valeu="valor variavel"" e é um contador como eu vou repassar o valor de cada produto se para o asp todo input vai ser com o name "teste"? ou seja no update eu vou colocar valor=Request("teste")
update teste set valor="&valor&" where nome_produto = ?
Eu preciso deizer qual produto, senao ele vai atualizar todos os valores daquele pedido, senao que o dono da loja so possa ter alterado o valor de 1 pedido.
Pra quem quiser segue o codigo abaixo:

ONDE FAZ O SELECT E CHAMA A PAGINA DE UPDATE
<form action="mostra_pedido.asp?acao=update&codigo_pedido=100138" method="post" ENCTYPE="multipart/form-data">
<table align="center" border="0" width="445">
<tr> <td align="left" colspan=4 height="30"><FONT SIZE=1 FACE=VERDANA><b>Dados do pedido</b></font></td>
</tr>
<tr>
<td width="355" bgcolor="#4B6DBD" height="10">
<div align="CENTER">
<b><FONT SIZE="1" FACE="VERDANA" color=#FFFFFF>Código</FONT></b> </div> </td>
<td width="192" bgcolor="#4B6DBD" height="10">
<div align="CENTER">
<b><FONT SIZE="1" FACE="VERDANA" color=#FFFFFF>Descrição</FONT></b> </div> </td>
<td width="243" bgcolor="#4B6DBD" height="10">
<div align="CENTER">
<b><FONT SIZE="1" FACE="VERDANA" color=#FFFFFF>Pr.Unitário</FONT></b> </div> </td>
<td width="28" bgcolor="#4B6DBD" height="10">
<div align="CENTER">
<b><FONT SIZE="1" FACE="VERDANA" color=#FFFFFF>Qtd.</FONT></b> </div> </td>
<td width="76" bgcolor="#4B6DBD" height="10">
<div align="CENTER">
<b><FONT SIZE="1" FACE="VERDANA" color=#FFFFFF>Total</FONT></b> </div> </td>
</tr>
<%
' Para cada registro na tabela Pedido_Item, mostra uma nova linha na tabela com
' codigo, descricao, preco, quantidade e total

Set RS_Pedido_Item = Server.CreateObject("ADODB.Recordset")
RS_Pedido_Item.Open "SELECT * FROM Pedido_Item WHERE codigo_pedido = " & codigo_pedido, Conexao2
RS_Pedido_Item.MoveFirst
subtotal = 0

While Not RS_Pedido_Item.EOF
%>
<tr>
<td width="355" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><%= RS_Pedido_Item("codigo_produto") %></FONT> </div> </td>
<td width="192" bgcolor="#F3F3F3">
<div align="LEFT">
<FONT SIZE="1" FACE="VERDANA"><%= RS_Pedido_Item("nome_produto_item") %>
<input type="hidden" name="nom" value="<%=RS_Pedido_Item("nome_produto_item") %>"></FONT> </div> </td>
<td width="243" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><%= FormatNumber(RS_Pedido_Item("preco_unitario"),2) %></FONT> </div> </td>
<td width="28" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><%= RS_Pedido_Item("quantidade") %></FONT> </div> </td>
<td width="76" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA">
<label>

<input name="preco_unit" type="text" id="total" size="10" value="<%= FormatNumber(RS_Pedido_Item("quantidade") * RS_Pedido_Item("preco_unitario"),2)%>">
</label>
<%= FormatNumber(RS_Pedido_Item("quantidade") * RS_Pedido_Item("preco_unitario"),2)%></FONT> </div> </td>
</tr>
<%
subtotal = subtotal + RS_Pedido_Item("quantidade") * RS_Pedido_Item("preco_unitario")
RS_Pedido_Item.MoveNext
Wend

'SQL = "SELECT subtotal, total, Taxa_Boleto FROM Pedidos WHERE (codigo_pedido = "& codigo_pedido &")"
SQL = "SELECT * FROM Pedidos WHERE (codigo_pedido = "& codigo_pedido &")"
set rs=Server.CreateObject("ADODB.Recordset")
rs.open SQL,Conexao
total = 0
codigo_pedido = rs("codigo_pedido")

If Not rs.EOF Then
total = rs("subtotal") + rs("taxa_envio")



%>
<tr>
<td width="355" colspan="4">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA">Subtotal:</FONT> </div> </td>
<td width="76" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><%= FormatNumber(subtotal,2) %></FONT> </div> </td>
</tr>
<tr>
<td width="355" colspan="4">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA">Taxa de envio:</FONT> </div> </td>
<td width="76" bgcolor="#F3F3F3">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><%= FormatNumber(rs("taxa_envio"),2) %></FONT> </div></td>
</tr>
<tr>
<td width="355" colspan="4">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA"><B>Total:</B></FONT> </div> </td>
<td width="76" bgcolor="#4B6DBD">
<div align="RIGHT">
<FONT SIZE="1" FACE="VERDANA" color="#FFFFFF"><B><%= FormatNumber(total,2) %></B></FONT> </div></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><label>
<input type="hidden" value="<%= FormatNumber(subtotal,2) %>" name="subtotal" />
<input type="hidden" value="<%= FormatNumber(total,2) %>" name="total" />
<input type="hidden" value="<%= rs("codigo_pedido") %>" name="codigo_pedido" />

<input name="update" type="submit" id="update" value="update" />
</label></td>
<td><input name="enviar" type="submit" id="enviar" value="Enviar Or&ccedil;amento" /></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
</form>

E A PAGINA DE UPDATE

<%
nome_produto = Request("nom")
valor = Request("preco_unit")
total = Request("total")
subtotal = Request("subtotal")
acao=Request("acao")
codigo_pedido=Request("codigo_pedido")
IF acao = "update" then

'SQL = "UPDATE pedidos SET subtotal='"&subtotal&"',total='"&total&"' WHERE (codigo_pedido = "& codigo_pedido &")"
'set rsupdate = Server.CreateObject("ADODB.Recordset")
'rsupdate.open SQL, Conexao
'rs.Close
'Set rs=Nothing
'Call Close()
'Response.Redirect("mostra_pedido.asp?codigo_pedido=" & Session("codigo_pedido") & "&msg=Produto Alterado com Sucesso!!!")

SQL2 = "UPDATE pedido_item SET preco_unitario='"&valor&"' WHERE (nome_produto_item = "& nome_produto &")"
set rsupdate2 = Server.CreateObject("ADODB.Recordset")
rsupdate2.open SQL2, Conexao
'rs.Close
'Set rs=Nothing
'Call Close()
Response.Redirect("mostra_pedido.asp?codigo_pedido=" & Session("codigo_pedido") & "&msg=Produto Alterado com Sucesso!!!")
End If
%>

sE ALGUEM PUDER ME AJUDAR EU AGRADEÇO

Por hora obrigado a todos
Rodrigo Thiago
Web Developer ASP/COLDFUSION/MYSQL/SQL-SERVER
rodrigo.thiago@gmail.com
white monkeys - Mande sua proposta / solicite seu orçamento

#2 alonerusso

alonerusso

    12 Horas

  • Usuários
  • 224 posts
  • Sexo:Masculino

Posted 21/12/2005, 10:50

na listagem dos produtos em cada linha vc coloca uma querystring "editar" por exemplo, com o valor do id do produto assim toda query string vai ter o id do produto certo ja q vc colocou ela dentro do loop e na pagina de update vc pega pelo id q veio da querystring "editar" ficaria ssim:
produto1 - - - - editar
produto2 - - - - -editar

query string
<A href=pagupdate.asp?editar=<%=rs("idproduto")%> target="I2">editar</a>

update
update pedidos_item set vlproduto where idproduto=" & request.querystring("editar")
:)
Hay quién apuesta fuerte y decide quererte,
sabiendo lo fácil que resulta perderte...

#3 Rodrigo Thiago

Rodrigo Thiago

    Tava sumido mas voltei........

  • Usuários
  • 208 posts
  • Sexo:Não informado
  • Localidade:são josé dos campos - sp
  • Interesses:Musica, coldfusion, mulheres (nao necessariamente nesta ordem)

Posted 21/12/2005, 15:08

poxa alonerusso valeu mesmo cara, vc deu uma luz no fim do tunel.
Mas seguinte, eu so estou mandando o codigo do produto neste seu exemplo, posso colocar o valor do produto tbm, ja que vc fez o exemplo passando tudo por url so esta indo o "idproduto" e nao o novo valor tbm?

Grato mesmo heim
Rodrigo Thiago
Web Developer ASP/COLDFUSION/MYSQL/SQL-SERVER
rodrigo.thiago@gmail.com
white monkeys - Mande sua proposta / solicite seu orçamento

#4 Agente Linhares

Agente Linhares

    fuis...abraços!

  • Ex-Admins
  • 3138 posts
  • Sexo:Não informado
  • Localidade:Biritiba Mirim-SP

Posted 21/12/2005, 20:54

so mandar o q quiser junto.
> Busca On-line - A Busca que faltava na Internet! - Cadastre-se!
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!

#5 alonerusso

alonerusso

    12 Horas

  • Usuários
  • 224 posts
  • Sexo:Masculino

Posted 22/12/2005, 08:37

caso o preço seja um valor inconstatnte faça assim:

<%
idproduto=request.QueryString("idproduto")
select case request.Form("opacao")
case 0%>
<form name="update" method="post" action="update.asp">
<input type="text" name="novovalor">
<input type="hidden" name="opacao" value=1>
<input type="submit" value="alterar valor">
</form>
<%case 1
SQL " update pedidos_item set vlproduto=" & request.Form("novovalor") & "where idproduto=" & idproduto
conexao.execute SQL,,adExecuteNoRecords
end select
%>

caso seja sempre o mesmo valor mande na mesma querystring
Hay quién apuesta fuerte y decide quererte,
sabiendo lo fácil que resulta perderte...




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq