Usuário com melhor resposta
Duvidas em Instrução ASP

Pergunta
-
Ola caros amigos
a uns dias estou tendo problemas com um script de carrinho de compras quero anexar o nome do cliente ao pedido aonde será tudo gravado no mdb quando o user (ou um vendedor autorizado) fizer um login mas nãoi sei o que está acontecendo no bloco com a instrução insert into pedidos vive acontecendo erros ora com quebra de linhas ora com parenteses e virgulas amigos agradeço desde já qualquer resposta que possa me esclarecer vou postar o código aqui
<table border=0 width=100%>
<tr width=100%><td width=62% valign=top><h2>Registrar Pedido</h2></td></tr>
<tr width=100%><td width=62% valign=top><!--#include file="msgprecompra.inc"--></td></tr>
<tr width=100%>
<%
Dim acao,login,razao,nome,endereco,bairro,municipio,uf,cep,tel,cnpj,inscest,condpgto,embalagem,subtotal,desconto,total,vendedor
acao = Request.QueryString("acao")
If acao="incluir" Then
If (Request.Form("razao") = "") Then acao = "XX" End If
If (Request.Form("nome") = "") Then acao = "XX" End If
If (Request.Form("endereco") = "") Then acao = "incluir" End If
If (Request.Form("bairro") = "") Then acao = "incluir" End If
If (Request.Form("municipio") = "") Then acao = "incluir" End If
If (Request.Form("uf") = "") Then acao = "incluir" End If
If (Request.Form("cep") = "") Then acao = "incluir" End If
If (Request.Form("tel") = "") Then acao = "incluir" End If
If (Request.Form("cnpj") = "") Then acao = "incluir" End If
If (Request.Form("inscest") = "") Then acao = "XX" End If
If (Request.Form("condpgto") = "") Then acao = "incluir" End If
If (Request.Form("embalagem") = "") Then acao = "incluir" End If
If (Request.Form("subtotal") = "") Then acao = "incluir" End If
If (Request.Form("desconto") = "") Then acao = "incluir" End If
If (Request.Form("total") = "") Then acao = "incluir" End If
If (Request.Form("vendedor") = "") Then acao = "incluir" End If
razao = Request.Form("razao")
nome = Request.Form("nome")
endereco = Request.Form("endereco")
bairro = Request.Form("bairro")
municipio = Request.Form("municipio")
uf = Request.Form("uf")
cep = Request.Form("cep")
tel = Request.Form("tel")
cnpj = Request.Form("cnpj")
inscest = Request.Form("inscest")
condpgto = Request.Form("condpgto")
embalagem = Request.Form("embalagem")
subtotal = Request.Form("subtotal")
desconto = Request.Form("desconto")
total = Request.Form("total")
vendedor = Request.Form("vendedor")
End If
%>
<%
Dim log,usuario,senha,chk_usuario,temp,arrTemp,lista_pedid
log = Request.QueryString("log")
usuario = Request.Form("usuario")
senha = Request.Form("senha")If (log = "chk") Then
set chk_usuario = lojaDB.Execute("SELECT * FROM clientes WHERE usuario='"& usuario &"' AND senha='"& senha & "'")
If chk_usuario.EOF Then
%>
<td width=62%><font color=red>Login Inválido</font></td>
</tr><tr width=100%>
<%
'para concluir o armazenamento de informações tno bd é necessário o log
log = "in"
usuario = ""
senha = ""
Else
temp = 0
Dim cl_id
While not chk_usuario.EOF
temp = temp + 1
cl_id = chk_usuario("id")
chk_usuario.MoveNext
Wend
If temp=1 Then
If IsEmpty(Session("car_prod_id")) Then
%>
<td width=62%><font color=red>
<h4>Carrinho Vazio</h4></font></td></tr><tr width=100%>
<td width=62%>Por favor, selecione os produtos que deseja comprar antes de fechar o pedido</td>
</tr>
<%
Else
'Login OK, gravando pedido
Dim ped_id,ped_data_ped,ped_status,ped_user_id,ped_prod_id,ped_prod_preco,ped_prod_quant
set lista_pedid = lojaDB.Execute("SELECT * FROM pedidos ORDER BY ped_id DESC")
If lista_pedid.EOF Then
ped_id = 1
Else
ped_id = lista_pedid("ped_id") + 1
End If
ped_data_ped = Date
ped_status = 0
ped_user_id = cl_id
'Lendo informações do pedido
Dim ped_prod_atual,ped_grava,loop1
For loop1 = LBound(session("car_prod_id")) to UBound(session("car_prod_id"))
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_id = arrTemp(1)
set ped_prod_atual = lojaDB.Execute("SELECT * FROM produtos WHERE id="& ped_prod_id &" AND disp='S'")
ped_prod_preco = ped_prod_atual("preco")
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_quant = arrTemp(2)
Next
'Grava Pedido
lojaDB.Execute("INSERT INTO pedidos(ped_id,data_ped,status,user_id,prod_id,prod_preco,prod_quant,"&_
"razao,endereco,cnpj,inscest,bairro,municipio,uf,cep,tel,condpgto,embalagem,subtotal,desconto,total,vendedor")
VALUES("& ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "& _
ped_prod_preco & "," & ped_prod_quant & "," & razao & "," &_
endereco & "," & cnpj &"," & inscest & "," & bairro & "," & municipio & "," & uf & "," &_
cep & "," & tel & "," & condpgto & "," & embalagem &"," & subtotal & "," & desconto & "," &_
total & ")")
'If acao = "incluir" Then
'Dim chk_cliente
'tento gravar o form cliente no BD! :º
'set chk_cliente = lojaDB.execute("SELECT * FROM clientemsm WHERE razao='"& Request.Form("razao") & "'")
'else
' set chk_cliente = lojaDB.Execute("INSERT INTO pedidos(razao,endereco,cnpj,inscest,bairro,municipio,uf," & _
' "cep,tel,condpgto,embalagem,subtotal,desconto,total,vendedor,data) VALUES(" & razao & "," &_
' endereco & "," & cnpj &"," & inscest & "," & bairro & "," & municipio & "," & uf & "," &_
' cep & "," & tel & "," & condpgto & "," & embalagem &"," & subtotal & "," & desconto & "," &_
' total & "," & data & ")")
Session.Abandon
'
' end if
%>
</tr><tr width=100%>
<td width=62%><h3>Pedido Cadastrado com Sucesso</h3></td>
</tr><tr width=100%>
<td width=62%><h4>Todos produtos foram salvos e removidos.</h4></td>
</tr><tr width=100%><td><h4>O número do seu pedido é <i><%=ped_id%></i></h4></td>
</tr><tr width=100%><td>
<p>
<!--#include file="msgpedfechado.inc"-->
INCLUI ESTE FORM NA MESMA AÇÃO INCLUIR DO OUTRO TIPO:</p>
<p>SET_CHK OU LOG=CHK</p></td>
<%
log = "nao"
End If
'Mais de um usuário com o mesmo nome
Else
%>
<td width=38%><p><font color=red>Problemas no processamento do Login</font><br>
Por favor, entre em contato com os administradores.</p>
<p><span class="style3">Possiveis causas:</span><br>
- Você não está autorizado a ver esta página.<br>
- Conexão de internet baixa ou nula.</p>
<p> </p></td>
</tr><tr width=100%>
<%
log = "in"
usuario = ""
senha = ""
End IfEnd If
End If
Select Case log
Case "in"
%>
<td width=62%><table width="100%" border="0">
<tr>
<td><table width="100%" border="0">
<tr>
<td width="17%" bgcolor="#CCCCCC"><div align="center"></div></td>
<td width="83%" bgcolor="#CCCCCC"><strong>Dados do cliente </strong><span class="style1">(preencha somente antes de fechar o pedido após a inserção de seus produtos)</span></td>
</tr>
<tr>
<td>Razão</td>
<td><label>
<input name="razao" type="text" id="razao" value="<%=razao%>" size="80" />
</label>
</td>
</tr>
<tr>
<td>Endereço</td>
<td><label>
<input name="endereco" type="text" id="endereco" value="<%=endereco%>" size="80" />
</label></td>
</tr>
<tr>
<td>CNPJ</td>
<td><label>
<input name="cnpj" type="text" id="cnpj" value="<%=cnpj%>" size="30" />
</label></td>
</tr>
<tr>
<td>Inscrição</td>
<td><label>
<input name="inscest" type="text" id="inscest" value="<%=inscest%>" size="30" />
</label></td>
</tr>
<tr>
<td>Bairro</td>
<td><label>
<input name="bairro" type="text" id="bairro" value="<%=bairro%>" size="80" />
</label></td>
</tr>
<tr>
<td>Município</td>
<td><label>
<input name="municipio" type="text" id="municipio" value="<%=municipio%>" size="50" />
</label></td>
</tr>
<tr>
<td>UF</td>
<td><label>
<input name="uf" type="text" id="uf" value="<%=uf%>" />
</label></td>
</tr>
<tr>
<td>CEP</td>
<td><label>
<input name="cep" type="text" id="cep" value="<%=cep%>" />
</label></td>
</tr>
<tr>
<td>Tel.</td>
<td><label>
<input name="tel" type="text" id="tel" value="<%=tel%>" />
</label></td>
</tr>
<tr>
<td>Embalagem</td>
<td><label>
<input name="embalagem" type="text" id="embalagem" value="<%=embalagem%>" />
</label></td>
</tr>
<tr>
<td>Quantidade</td>
<td><label>
<select name="quantidade" id="quantidade">
<option>10</option>
<option>25</option>
<option>50</option>
</select>
</label></td>
</tr>
<tr>
<td bgcolor="#FFFFFF">Cond. Pgto.</td>
<td bgcolor="#FFFFFF"><label>
<input name="condpgto" type="text" id="condpgto" value="<%=condpgto%>" />
</label></td>
</tr>
<tr>
<td bgcolor="#FFFFFF">Sub-Total</td>
<td bgcolor="#FFFFFF"><label>
<input name="subtotal" type="text" id="subtotal" value="<%=subtotal%>" />
</label></td>
</tr>
<tr>
<td bgcolor="#FFFFFF">Descontos</td>
<td bgcolor="#FFFFFF"><input name="desconto" type="text" id="desconto" value="<%=desconto%>" /></td>
</tr>
<tr>
<td bgcolor="#FFFFFF"><label>Total</label></td>
<td bgcolor="#FFFFFF"><label>
<input name="total" type="text" id="total" value="<%=total%>" />
</label></td>
</tr>
<tr>
<td bgcolor="#CCCCCC"> </td>
<td bgcolor="#CCCCCC"> </td>
</tr>
</table></td>
</tr>
<tr>
<td>Entre com seu nome de usuário e senha para concluir a compra.</td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
</tr><tr align=100%><td><form action="fecharpedido.asp?log=chk" method=post>
<table border="1" width="1px">
<tr width="100%">
<td>Usuário:</td>
<td><input type="text" maxlength="12" size="12" name="usuario" /></td>
<td rowspan="2"><input type="image" src="./images/logentra.gif" border="0" /></td>
</tr>
<tr width="100%">
<td>Senha..:</td>
<td><input type="password" maxlength="8" size="8" name="senha" /></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td colspan="3">.</td>
</tr>
</table>
<br>
</form>
</td>
<% Case "nao" %>
<% Case Else %>
<script>window.location='./carrocompras.asp'</script>
<%End Select %>
</tr>
<tr align=100%>
<td> </td>
</tr>
</table>
Respostas
-
Gerrad, tente com a string de inserçao abaixo
lojaDB.Execute("INSERT INTO pedidos(ped_id,data_ped,status,user_id,prod_id,prod_preco,prod_quant," &_
"razao,endereco,cnpj,inscest,bairro,municipio,uf,cep,tel,condpgto,embalagem,subtotal,desconto,total,vendedor)" &_
" VALUES(" & ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "," & _
ped_prod_preco & "," & ped_prod_quant & "," & razao & "," &_
endereco & "," & cnpj & "," & inscest & "," & bairro & "," & municipio & "," & uf & "," &_
cep & "," & tel & "," & condpgto & "," & embalagem & "," & subtotal & "," & desconto & "," &_
total & ")")Abraço
Estevam
-
Ola Amigos do forum
depois de tanto bater a cabeça consegui resolver o problema estava justamente no bloco acima não digitei as linhas nos lugares certos proximo a linha 80 segue o cód correto e a ajuda para aqueles q possuirem o mesmo problema minha duvida agora é com select mais isto fica pra outro post
'Login OK, gravando pedido
Dim ped_id,ped_data_ped,ped_status,ped_user_id,ped_prod_id,ped_prod_preco,ped_prod_quant,ped_razao,ped_endereco
Dim ped_cnpj,ped_inscest,ped_bairro,ped_municipio,ped_uf,ped_cep,ped_tel,ped_condpgto
Dim ped_embalagem,ped_quantidade,ped_subtotal,ped_desconto,ped_total,ped_usuario
set lista_pedid = lojaDB.Execute("SELECT * FROM pedidos ORDER BY ped_id DESC")
'aqui captura as informações dos sessions e textinputs para o BD(anteriormente error)
If lista_pedid.EOF Then
ped_id = 1
Else
ped_id = lista_pedid("ped_id") + 1
End If
ped_data_ped = Date
ped_status = 0
ped_user_id = cl_id
ped_razao = request.form("razao")
ped_endereco = request.form("endereco")
ped_cnpj = request.form("cnpj")
ped_inscest = request.form("inscest")
ped_bairro = request.form("bairro")
ped_municipio = request.form("municipio")
ped_uf = request.form("uf")
ped_cep = request.form("cep")
ped_tel = request.form("tel")
ped_condpgto = request.form("condpgto")
ped_embalagem = request.form("embalagem")
ped_quantidade = request.form("quantidade")
ped_subtotal = request.form("subtotal")
ped_desconto = request.form("desconto")
ped_total = request.form("total")
ped_usuario = request.form("usuario")
'Lendo informações do pedido
Dim ped_prod_atual,ped_grava,loop1
For loop1 = LBound(session("car_prod_id")) to UBound(session("car_prod_id"))
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_id = arrTemp(1)
set ped_prod_atual = lojaDB.Execute("SELECT * FROM produtos WHERE id="& ped_prod_id &" AND disp='S'")
ped_prod_preco = ped_prod_atual("preco")
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_quant = arrTemp(2)
'Grava Pedido para numericos uso "" e texto uso '""'
lojaDB.Execute("INSERT INTO pedidos(ped_id, data_ped, status, user_id, prod_id, prod_preco, prod_quant, razao, endereco,"& _
"cnpj, inscest, bairro, municipio, uf, cep, tel, condpgto, embalagem,quantidade, subtotal, desconto, total, usuario)" &_
" VALUES(" & ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "," & _
ped_prod_preco & "," & ped_prod_quant & ",'" & ped_razao & "','" & ped_endereco & "','" & ped_cnpj & "','" & _
ped_inscest & "','" & ped_bairro & "','" & ped_municipio & "','" & ped_uf & "','" & ped_cep & "','" & ped_tel & "','" &_
ped_condpgto & "','" & ped_embalagem & "','" & ped_quantidade & "','" & ped_subtotal & "','" & ped_desconto & "','" &_
ped_total & "','" & ped_usuario & "')")
Next
Session.Abandon
%>
Todas as Respostas
-
Gerrad, tente com a string de inserçao abaixo
lojaDB.Execute("INSERT INTO pedidos(ped_id,data_ped,status,user_id,prod_id,prod_preco,prod_quant," &_
"razao,endereco,cnpj,inscest,bairro,municipio,uf,cep,tel,condpgto,embalagem,subtotal,desconto,total,vendedor)" &_
" VALUES(" & ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "," & _
ped_prod_preco & "," & ped_prod_quant & "," & razao & "," &_
endereco & "," & cnpj & "," & inscest & "," & bairro & "," & municipio & "," & uf & "," &_
cep & "," & tel & "," & condpgto & "," & embalagem & "," & subtotal & "," & desconto & "," &_
total & ")")Abraço
Estevam
-
Ola Estevam coloquei sim a string q vc colocou acima e fiz mais uns reparos apartir da linha 80 os erros com parenteses e aspas não aparecem porem no final de todo o reconhecimento das variaveis surge o seguinte erro:
linha 121
Source line: lojaDB.Execute("INSERT INTO pedidos(ped_id,data_ped,status,user_id,prod_id,prod_preco,prod_quant," &_
Description: [Microsoft][Driver ODBC para Microsoft Access] Erro de sintaxe na instrução INSERT INTO.segue o código abaixo dos reparos que fiz com sua ajuda:
'Login OK, gravando pedido
Dim ped_id,ped_data_ped,ped_status,ped_user_id,ped_prod_id,ped_prod_preco,ped_prod_quant,ped_razao,ped_endereco
dim ped_cnpj,ped_inscest,ped_bairro,ped_municipio,ped_uf,ped_cep,ped_tel,ped_condpgto
dim ped_embalagem,ped_subtotal,ped_desconto,ped_total
set lista_pedid = lojaDB.Execute("SELECT * FROM pedidos ORDER BY ped_id DESC")
ped_razao = lista_pedid("razao")
ped_endereco = lista_pedid("endereco")
ped_cnpj = lista_pedid("cnpj")
ped_inscest = lista_pedid("inscest")
ped_bairro = lista_pedid("bairro")
ped_municipio = lista_pedid("municipio")
ped_uf = lista_pedid("uf")
ped_cep = lista_pedid("cep")
ped_tel = lista_pedid("tel")
ped_condpgto = lista_pedid("condpgto")
ped_embalagem = lista_pedid("embalagem")
ped_subtotal = lista_pedid("subtotal")
ped_desconto = lista_pedid("desconto")
ped_total = lista_pedid("total")
ped_prod_preco = lista_pedid("vendedor")
If lista_pedid.EOF Then
ped_id = 1
Else
ped_id = lista_pedid("ped_id") + 1
End If
ped_data_ped = Date
ped_status = 0
ped_user_id = cl_id
'Lendo informações do pedido
Dim ped_prod_atual,ped_grava,loop1
For loop1 = LBound(session("car_prod_id")) to UBound(session("car_prod_id"))
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_id = arrTemp(1)
set ped_prod_atual = lojaDB.Execute("SELECT * FROM produtos WHERE id="& ped_prod_id &" AND disp='S'")
ped_prod_preco = ped_prod_atual("preco")
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_quant = arrTemp(2)
Next
'Grava Pedido -> aki inseri o novo script do estevam
lojaDB.Execute("INSERT INTO pedidos(ped_id,data_ped,status,user_id,prod_id,prod_preco,prod_quant," &_
"ped_razao,endereco,cnpj,inscest,bairro,municipio,uf,cep,tel,condpgto,embalagem,subtotal,desconto,total,vendedor)" &_
" VALUES(" & ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "," & _
ped_prod_preco & "," & ped_prod_quant & "," & razao & "," &_
endereco & "," & cnpj & "," & inscest & "," & bairro & "," & municipio & "," & uf & "," &_
cep & "," & tel & "," & condpgto & "," & embalagem & "," & subtotal & "," & desconto & "," &_
total & ")")
Session.Abandon
%>
-
Ola Amigos do forum
depois de tanto bater a cabeça consegui resolver o problema estava justamente no bloco acima não digitei as linhas nos lugares certos proximo a linha 80 segue o cód correto e a ajuda para aqueles q possuirem o mesmo problema minha duvida agora é com select mais isto fica pra outro post
'Login OK, gravando pedido
Dim ped_id,ped_data_ped,ped_status,ped_user_id,ped_prod_id,ped_prod_preco,ped_prod_quant,ped_razao,ped_endereco
Dim ped_cnpj,ped_inscest,ped_bairro,ped_municipio,ped_uf,ped_cep,ped_tel,ped_condpgto
Dim ped_embalagem,ped_quantidade,ped_subtotal,ped_desconto,ped_total,ped_usuario
set lista_pedid = lojaDB.Execute("SELECT * FROM pedidos ORDER BY ped_id DESC")
'aqui captura as informações dos sessions e textinputs para o BD(anteriormente error)
If lista_pedid.EOF Then
ped_id = 1
Else
ped_id = lista_pedid("ped_id") + 1
End If
ped_data_ped = Date
ped_status = 0
ped_user_id = cl_id
ped_razao = request.form("razao")
ped_endereco = request.form("endereco")
ped_cnpj = request.form("cnpj")
ped_inscest = request.form("inscest")
ped_bairro = request.form("bairro")
ped_municipio = request.form("municipio")
ped_uf = request.form("uf")
ped_cep = request.form("cep")
ped_tel = request.form("tel")
ped_condpgto = request.form("condpgto")
ped_embalagem = request.form("embalagem")
ped_quantidade = request.form("quantidade")
ped_subtotal = request.form("subtotal")
ped_desconto = request.form("desconto")
ped_total = request.form("total")
ped_usuario = request.form("usuario")
'Lendo informações do pedido
Dim ped_prod_atual,ped_grava,loop1
For loop1 = LBound(session("car_prod_id")) to UBound(session("car_prod_id"))
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_id = arrTemp(1)
set ped_prod_atual = lojaDB.Execute("SELECT * FROM produtos WHERE id="& ped_prod_id &" AND disp='S'")
ped_prod_preco = ped_prod_atual("preco")
arrTemp = Split(Session("car_prod_id")(loop1),"&")
ped_prod_quant = arrTemp(2)
'Grava Pedido para numericos uso "" e texto uso '""'
lojaDB.Execute("INSERT INTO pedidos(ped_id, data_ped, status, user_id, prod_id, prod_preco, prod_quant, razao, endereco,"& _
"cnpj, inscest, bairro, municipio, uf, cep, tel, condpgto, embalagem,quantidade, subtotal, desconto, total, usuario)" &_
" VALUES(" & ped_id & "," & ped_data_ped & "," & ped_status & "," & ped_user_id & "," & ped_prod_id & "," & _
ped_prod_preco & "," & ped_prod_quant & ",'" & ped_razao & "','" & ped_endereco & "','" & ped_cnpj & "','" & _
ped_inscest & "','" & ped_bairro & "','" & ped_municipio & "','" & ped_uf & "','" & ped_cep & "','" & ped_tel & "','" &_
ped_condpgto & "','" & ped_embalagem & "','" & ped_quantidade & "','" & ped_subtotal & "','" & ped_desconto & "','" &_
ped_total & "','" & ped_usuario & "')")
Next
Session.Abandon
%>