Ir para conteúdo
Fórum Script Brasil
  • 0

Problemas No Select


Espartaco

Pergunta

Tenho mais uma dúvida. Coloquei em um tópico separado por que o assunto é outro.

Eu tava mexendo num script de e-commerce da Virtua Store e gostaria de adicionar Cores e Tamanhos disponíveis na compra do prudto.

Criei duas novas tabelas, atabela cores, com os campos ID, IDPROD e COR

e a tabela tamanho com os campos ID, IDPROD e TAMANHO.

Fiz umas modificações que chegou a travar o micro diversas vezes.

Quando eu mudo o set cat para set cor ou set tamanho, trava o micro todo (eu uso win2000)

o que será que pode se?

Alguém sabe?

Segue o código

<!-- #include file="superior.asp" -->
<body topmargin="0" leftmargin="0">

<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
  <tr>
    <td width="15%" valign="top"><!-- #include file="menu_left.asp" --></td>
    <td width="85%" valign="top">
    <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2">
      <tr>
        <td width="100%"><%
'Chama o produto a partir da variavel
intProdID = Request.QueryString("produto")
if intProdID = "" then
intProdID = "0000000000"
end if
'Chama o produto
Set prodinfo = abredb.Execute("SELECT * FROM produtos where idprod="&intProdID)
if prodinfo.EOF then%><table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber3">
          <tr>
            <td width="100%">
            <font size="1" face="Verdana"><b>Home »</b> 
        <%= strNome %></font></td>
          </tr>
          <tr>
            <td width="100%">
            <hr color="#FF0000" size="1">
            </td>
          </tr>
          <tr>
            <td width="100%">
            <p align="center"><b><font size="2" face="Verdana">Nenhum produto 
            encontrado neste departamento</font></b></p>
            </td>
          </tr>
        </table>
        <p><%
response.end
else
%>
<%
'Variaveis do cadastro do produto
strName = prodinfo("nome")
strDesc = prodinfo("detalhe")
strId = prodinfo("idprod")
intPrice = prodinfo("preço")
intRefer = prodinfo("referencia")
intPricev = prodinfo("precovelho")
strEstoq = prodinfo("estoque")
idsessao = prodinfo("idsessao")
economiza = intPricev - intPrice

'Chama o nome do departamento
Set nomes = abredb.Execute("SELECT * FROM sessoes where id="&idsessao)
strNome = nomes("nome")

'Fecha o departamento
%>

<script LANGUAGE="JScript">
  function AbortEntry(sMsg, eSrc){window.alert(sMsg);eSrc.focus();}
  function HandleError(eSrc){var val = parseInt(eSrc.value);
  
  if (isNaN(val)){
     document.registro1.intQuant.value = '1';
     }
  
  if (val <= 0) {
     document.registro1.intQuant.value = '1';
     }
    }
  
  function amigo(){
     window.open('enviaamigo.asp?acao=abre&produto=<%=intProdID%>','email','resizable=no,width=270,height=225,scrollbars=no');
    }
        </script>

<%
'Formata os valores do produto
precitonx = formatnumber(intPrice,2)
precitoex = formatnumber(economiza,2)
precitovx = formatnumber(intPricev,2)
if prodinfo("parcela")="v" then
intparc = 1
else
intparc = prodinfo("parcela")
end if
cparcela = precitonx / intparc
cparcela = formatnumber(cparcela,2)%>
<table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber4">
          <tr>
            <td width="100%"><font size="1" face="Verdana"><b>
            <a href="default.asp">Home</a> »</b> <b>
            <a href="sessoes.asp?item=<%=idsessao%>"><%= strNome %></a> »</b> <%= strName %></font></td>
          </tr>
          <tr>
            <td width="100%">
            <hr color="#FF0000" size="1"></td>
          </tr>
          <tr>
            <td width="100%">
            <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#FF0000" width="100%" id="AutoNumber5">
              <tr>
                <td width="100%">
                <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber6">
                  <tr>
                    <td width="100%">
                    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber7">
                      <tr>
                        <td width="100%" colspan="2"><b>
                        <font face="Verdana" size="2"><%= strName %></font></b><br>
                        <font size="1" face="Verdana">
                        <b>Fabricante: </b><%=prodinfo("fabricante")%></font></td>
                      </tr>
                      <tr>
                        <td width="30%" valign="top">&nbsp;</td>
                        <td width="70%" valign="top">
                        &nbsp;</td>
                      </tr>
                      <tr>
                        <td width="30%" valign="top">
                        <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber13">
                          <tr>
                            <td width="100%">
                            <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#FF0000" width="100%" id="AutoNumber14">
                              <tr>
                                <td width="100%"><font face="<%=fonte%>" style=font-size:11px;color:000000>
                        <img src="produtos/imagens/<%=prodinfo("imgra")%>" width=188 height="261"></td>
                              </tr>
                            </table>
                            </td>
                          </tr>
                          <tr>
                            <td width="100%">
                            <p align="center">
                            <img border="0" src="imagens/div1.jpg"></td>
                          </tr>
                          <tr>
                            <td width="100%">
                            <div align="center">
                              <center>
                              <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber15" background="imagens/but_indique.jpg" width="173" height="37">
                                <tr>
                                  <td>
                                  <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber16">
                                    <tr>
                                      <td width="100%">
                                      <p align="center"><b>
                                      <font face="Verdana" size="1"><a href="javascript: amigo()">INDIQUE PARA UM AMIGO</a></font></b></td>
                                    </tr>
                                  </table>
                                  </td>
                                </tr>
                              </table>
                              </center>
                            </div>
                            </td>
                          </tr>
                        </table>
                        </td>
                        <td width="70%" valign="top">
                        <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber8" height="293">
                          <tr>
                            <td width="100%" height="290">
                            <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#FF0000" width="100%" id="AutoNumber9">
                              <tr>
                                <td width="100%" bgcolor="#FFF4F4">
                                <table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber10" height="277">
                                  <tr>
                                    <td width="100%" height="12">
                                    <font size="1" face="Verdana"><b>Descrição:</b> <%= strDesc %></font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="12">
                                    <font face="Verdana" size="1"><b>Estoque: </b><%if strEstoq = "s" then response.write strLg26 else response.write strLg229 end if%></font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="12">
                                    <font face="Verdana" size="1"><b>Referência:</b> 
                                    <%=prodinfo("referencia")%></font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="37"><b>
                                    <font size="1" face="Verdana">Cores 
                                    Disponíveis:</font></b><table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber11">
                                      <tr>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/branco.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/preto.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/vermelho.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                        <td width="10%" align="center">
                                        <img border="0" src="cores/sem_cor.jpg"></td>
                                      </tr>
                                    </table>
                                    </td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="12">
                                    <font size="1" face="Verdana"><b>Tamanhos 
                                    Disponíveis:</b> <%=prodinfo("tamanho")%></font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="12">
                                    <font face="Verdana" size="1"><b>De:</b>
                                    <strike><font color="#FF0000">R$ <%=precitovx%></font>
                                    </strike></font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="12">
                                    <font size="1" face="Verdana"><b>Por:</b> R$ <%=precitonx%> 
                                    (economize R$ <%=precitoex%>)</font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="15">
                                    <hr color="#FF0000" size="1" noshade></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="16">
                                    <p align="center">
                                    <font size="2" face="Verdana">Comprar 
                                    Produto:</font></td>
                                  </tr>
                                  <tr>
                                    <td width="100%" height="19">
                                    <form method="POST" action="comprar.asp" name="registro1">
                                    <input type=hidden name=frete value="<%=estado2%>">
                                    <input type="hidden" name="intProdID" value="<%= intProdID %>"><table border="0" cellpadding="0" cellspacing="3" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber12">
                                        <tr>
                                          <td width="50%"><b>
                                          <font size="1" face="Verdana">Escolha 
                                          o Tamanho:</font></b></td>
                                          <td width="50%">
                                              <select name=D1 style="font-family: Verdana; font-size: 10 px; border: 1px solid #FF0000; background-color: #FFCCCC">
<option value=todos>Todos</option>
<option value=xxx>----------------</option>
<%
Set cat = abredb.Execute("SELECT * FROM tamanhos where idprod="&intProdID)
While Not cat.EOF%><option value=<%= cat("tamanho") %>><%= cat("tamanho") %></option>
<%
cat.MoveNext
Wend%>
</select></td>
                                        </tr>
                                        <tr>
                                          <td width="50%"><b>
                                          <font size="1" face="Verdana">Escolha 
                                          a Cor:</font></b></td>
                                          <td width="50%">
                                          <select name=cat style="font-family: Verdana; font-size: 10 px; border: 1px solid #FF0000; background-color: #FFCCCC">
<option value=todos>Todos</option>
<option value=xxx>----------------</option>
<%
Set cat = abredb.Execute("SELECT * FROM cores where idprod="&intProdID)
While Not cat.EOF%><option value=<%= cat("cor") %>><%= cat("cor") %></option>
<%
cat.MoveNext
Wend%>
</select></td>
                                        </tr>
                                        <tr>
                                          <td width="50%"><b>
                                          <font size="1" face="Verdana">Escolha 
                                          a Quantidade:</font></b></td>
                                          <td width="50%">
                                          <select name=intQuant 
                                          <option value="01">
                                          <option value="01">01</option>
                                          <option value="02">02</option>
                                          <option value="03">03</option>
                                          <option value="04">04</option>
                                          <option value="05">05</option>
</select></td>
                                        </tr>
                                        <tr>
                                          <td width="100%" colspan="2">
                                          <p align="center">
                                          <font face="<%=fonte%>" style=font-size:11px;color:000000>
                                          <font style=font-size:11px;font-family:<%=fonte%>;color:000000 face="<%=fonte%>" size="2"> <br>
                                          <input type="image" src=<%=dirlingua%>/imagens/comprar.gif onMouseOver="window.status='Comprar Produto';return true;" onMouseOut="window.status='';return true;" id="submit1" name="I1"></font></td>
                                        </tr>
                                      </table>
                                    </form></td>
                                  </tr>
                                  </table>
                                </td>
                              </tr>
                            </table>
                            </td>
                          </tr>
                        </table>
                        </td>
                      </tr>
                    </table>
                    </td>
                  </tr>
                </table>
                </td>
              </tr>
            </table>
            </td>
          </tr>
        </table>
        </td>
      </tr>
    </table>
    </td>
  </tr><%nomes.Close
set nomes = Nothing
%>
</table><%end if%><!-- #include file="baixo.asp" -->

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Guest - ska_ska -

olha velho... o codigo ta muito grande..hauhau... preguiça...

mas de boa... 95% das vezes q o micro trava é loop em alguma função...

ou você ta usando um on error resume next... q não deveria usar no local usado... ai quando ele entra no loop.. da um erro.. ele ignora e fica rodando isso infinito... ai já era.. so reiniciando o IIS.....

ou você tem um loop principalmente em cima de uma tabela.. tipo aqueles

Do while not tabela.EOF
Loop

e está esquecendo de pedir pra ir para o proximo registro... da uma olhada ai...

e outra forma pra saber se é loop mesmo.. é você abrir o gerenciador de tarefas... e ir na aba da memoria... quando rodar a pagina se o micro travar e o uso da memoria ir aumentando rapidamente... 99% de loop.. beleza...

fui

ska forever...

Link para o comentário
Compartilhar em outros sites

  • 0

Cara.. a sua tabela eu faria diferente. Do jeito q está você vai ter que repetir a mesma cor várias vezes a toa.

Faz uma tabela de cor

COR (idcor, cor)

e aí em outra tabela você faz o link de produtos com as cores

COR_PRODUTO (idproduto, idcor)

É muito melhor estruturar assim.

Do jeito q você fez, é melhor colocar as cores direto na tabela de produtos, num campo, separado por vírgulas, o que eu não aconselho.

Link para o comentário
Compartilhar em outros sites

  • 0

Não LI o seu código todo...

Mas pelo q entendi sobre o q comentaram vai ae

Como disse o pgmador.

Faça isso!

Depois use o INNER JOIN para comparar/igualar tabelas.

sintaxe

sql = "SELECT * FROM tabela_a INNER JOIN tabela_b ON tabela_a.idcor = tabela_b.idcor" 'BLA BLA

Valeu!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...