Ir para conteúdo
Fórum Script Brasil

felipefrancesco

Membros
  • Total de itens

    208
  • Registro em

  • Última visita

Tudo que felipefrancesco postou

  1. felipefrancesco

    Order By

    você pode fazer com subquery (que não funciona no Access), assim: SELECT campo FROM Tabela WHERE data = (SELCT MAX(data) FROM Tabela)
  2. felipefrancesco

    Dois Servidores...

    É...provavelmente porque tem algum problema de conexão entre os servidores. Provavelmente um firewall no servidor do banco.
  3. felipefrancesco

    Dois Servidores...

    Sim, sim....via ODBC você passa o IP do servidor onde está o banco como parâmetro na string de conexão.
  4. você pode alterar o timeout da página para um valor bem grande, se não me engano é assim: Server.ScriptTimeOut = 9999 Se não der muito certo, você pode fazer uma gambiarra q eu já fiz, q é para cada número x de iterações no loop, você dá um redirect para a mesma página passando um parâmetro pela URL, depois você pega esse parâmetro e continua de onde parou.
  5. felipefrancesco

    Global

    É...o arquivo deve fica no diretório raiz do site. Se for a pasta wwwroot, então é sim.
  6. Dois actions no mesmo form??? você quer submeter o mesmo formulário para dois arquivos diferentes? você pode tentar com javascript, mas eu não sei se dá certo não...
  7. O ASP é uma tecnologia para desenvolvimento de sistemas web, que possui recursos equivalentes a qualquer ambiente para desenvolvimento desktop. A grande diferença é a manipulação de eventos e a arquitetura cliente/servidor que é a forma de processamento do ASP. De qualquer maneira, o ASP tem algumas restrições sim, mas que não impedem que algo seja feito, somente dificultam e/ou diminuem o desempenho do sistema.
  8. Bom, será que não é nenhum problema no código. O que pode estar acontecendo é ou um travamento por javascript ou um layer com posicionamento absoluto em cima das caixas de texto. De qualquer maneira, eu uso o Firefox e nunca tive problemas com isso.
  9. Tenta fazer essa consulta assim e vê se vai: sql2="select empreendimento, count(empreendimento) as soma from rossi group by empreendimento having dialogovalido='sim'"
  10. Pra não ter esse problema, usa o cInt com o zero antes, ai se tiver vazio ou nulo, ele considera zero: cInt(0&session("var"))
  11. felipefrancesco

    Validação

    usa o isNumeric: if not isNumeric(var) then response.write "Valor não numérico" end if
  12. felipefrancesco

    Perda De Session

    Estranho isso... Verifica se realmente as sessions estão sendo carregadas, e depois tenta com server.transfer ao invés de response.redirect
  13. felipefrancesco

    Erro De Sql

    Fertel, porque faz o select, selecionando explicitamente todos os campos? SELECT USUARIO_ID_VENDEDOR, CAMPO2, CAMPO3 FROM CONTA WHERE STATUS_CONTA = 1 OR STATUS_CONTA = 0 GROUP BY USUARIO_ID_VENDEDOR ORDER BY DATA DESC
  14. Bom, eu não conheço esse tipo double, acho q deve ser o mesmo q float q é o q eu uso. De qualquer maneira, acho q não tem um tipo certo, depende do caso. Se você for fazer um e-commerce de supermercado por exemplo, eu acho um exagero você colocar 8, porque os valores não vão chegar a cifras tão grandes, mas em outros casos pode até ser necessário mais.
  15. Então dark0, o problema de fazer dessa forma é que se o seu site fica muito grande (e isso acontece!), quando você tiver q fazer alteração, você vai ter q alterar em todas as línguas, cada parte a ser alterada, e dependendo da alteração isso é problemático. Já vi casos em que um mesmo site estava com 3 versões diferentes, uma em cada língua. Eu tenho sites feitos das duas formas, e nos q foram feitos com textos vindos do banco a manutenção é muito mais rápida e o site é muito mais íntegro nas informações. Mas, eu aconselho essa forma só se for um site grande.
  16. É esse é um problema em tanto. Eu já vi casos em q o site tem 3 versões iguais, uma para cada língua, o q é a forma mais comum de se fazer. Eu no meu caso, fiz um banco de dados de idiomas e coloquei todos os textos do site em tabelas e pegava os valores dinamicamente. Mas pra quem for fazer assim pode se preparar porque é complicado pra caramba.
  17. É isso mesmo Ale...é campo...me desculpa.... É que tem bancos como o Access que possuem campos específicos de moeda, outros como o Oracle o MySql não.
  18. felipefrancesco

    Dividir Formulários

    A melhor maneira é você fazer a inclusão em passos. Então no primeiro passo você grava os dados e nos outros você só altera. Nesse caso você mantém um campo do tipo "liberado" , para que você saber se o usuário terminou o cadastro ou não. Sacou??
  19. Bom, vamos lá, já trabalhei com e-commerce. Primeiro, se o banco não tiver um campo específico do tipo moeda eu uso um campo FLOAT. Eu nunca tive q fazer em mais de uma moeda, mas nesse caso eu faria uma tabela no DB de moedas e teria uma campo para o prefixo "R$", o nome dela e uma campo com o valor dela na cotação de uma moeda base, para fazer as conversões.Acho q dessa forma fica fácil para o usuário atualizar as taxas de câmbio e o sistema não corre risco de integridade. Pra formatar, acho q uma forma simples é assim: <%="R$"&formatnumber(valor,2)%>, porque fica fácil mudar depois se for necessário. Pra terminar, eu acho q não tem muitas dificuldades em trabalhar com moeda, só gosto de tomar cuidado pra fazer um código flexível, pra não ser pego de surpresa com alterações no futuro. É isso!!
  20. Bom, essas senhas estão no banco?? Uma vez q o usuário está cadastrado no banco, você faz um formulário e cria uma cláusula SQL comparando com os valores vindos do form.
  21. porque??Posta uma das consultas ai...
  22. felipefrancesco

    Atualizar Página

    Olha, a melhor forma é você gravar os requests no início da página e escrever no value dos campos, mais ou menos assim: <% Dim campo if request.form.count > 0 then campo = request.form("campo") end if %> <input value="<%=campo%>" />
  23. felipefrancesco

    Variáveis

    PASP, Dá uma olhada no banco e vê se está gravando, pra sabermos se o problema é na gravação ou na obtenção dos dados.
  24. felipefrancesco

    Loja Virtual

    Meu, para qualquer coisa q você for fazer, não só uma loja virtual, você tem q saber primeiro o q você quer fazer pra depois descobrir como. Ex: Loja virtual tem carrinho, cadastro, etc. você tem q pensar no quê você quer, e depois pesquisar como implementar.
  25. Pessoal, Como tem muita gente perguntando sobre o getRows e como trabalhar com array, esse é um conjunto de funções e sub-rotinas para trabalhar com dados. Isso tudo pode ser colocado em um só arquivo e usado como include. Obs: A conexão está sendo feita para o MySql, para outros bancos é só trocar a string <% ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: CONSTANTES UTILIZADAS (PODEM SER CRIPTOGRAFADAS) ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: const cStrUsuario = "usuario" ' ::: Usuário para o banco const cStrSenha = "senha" ' ::: Senha para o banco const cStrHost = "192.168.0.1" ' ::: Host onde encontra-se o banco const cStrDB = "banco" ' ::: Nome do banco de dados const cBlnDebug = true ' ::: Se verdadeiro, está em modo de depuração ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: DECLARANDO VARIÁVEIS PÚBLICAS ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Dim aryDados ' ::: Array de dados padrão Dim oConn ' ::: Objeto de conexão padrão ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: SUB-ROTINA PARA ABRIR UMA CONEXÃO COM O BANCO ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Sub abreConexao() ' ::: Pula os erros On Error Resume Next Dim strConn ' ::: Variável receberá a string de conexão ' ::: Instancia o objeto de conexão set oConn = server.CreateObject("ADODB.Connection") ' ::: Atribui a string de conexão strConn = "DRIVER={MySQL};SERVER=" & cStrHost & _ ";DATABASE=" & cStrDB & _ ";USER=" & cStrUsuario & _ ";PWD=" & cStrSenha ' ::: Abre a conexão oConn.open strConn ' ::: Tratamento de Erros if err <> 0 and cBlnDebug then response.write "Erro na abertura da conexão<BR>" & _ "<b>Descrição:</b>" & err.description & "<BR>" & _ "<b>String:</b>" & strConn & "<BR>" response.end end if End Sub ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: SUB-ROTINA PARA FECHAR UMA CONEXÃO COM O BANCO ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Sub fechaConexao() ' ::: Pula os erros On Error Resume Next ' ::: Fecha a conexão oConn.close ' ::: Tratamento de Erros if err <> 0 and cBlnDebug then response.write "Erro no fechamento da conexão<BR>" & _ "<b>Descrição:</b>" & err.description & "<BR>" response.end end if ' ::: Destrói a instãncia do objeto set oConn = nothing End Sub ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: FUNÇÃO PARA EXECUTAR COMANDOS DML (Data Manipulation Language) ' ::: Ex: Insert, Update, Delete ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: function executaDML(byVal pSql) ' ::: Pula os erros On Error Resume Next Dim blnRetorno ' ::: Valor booleano q conterá o resultado da função blnRetorno = false ' ::: A função retorna falso a priori Dim oRs ' ::: Objeto recordset if pSql <> "" then ' ::: Abre a conexão com o banco call abreConexao() ' ::: Instancia o objeto recordset set oRs = server.createObject("ADODB.Recordset") ' ::: Executa a cláusula sql, atribuindo ao recordset set oRs = oConn.execute(pSql) ' ::: Tratamento de Erros if err <> 0 and cBlnDebug then response.write "Erro ao executar comando DML<BR>" & _ "<b>Descrição:</b>" & err.description & "<BR>" & _ "<b>String:</b>" & pSql & "<BR>" response.end elseif err = 0 then ' ::: Sem erros, retorna verdadeiro blnRetorno = true end if ' ::: Fecha o recordset oRs.close ' ::: Destrói instância do objeto set oRs = nothing ' ::: Fecha a conexão call fechaConexao() end if ' ::: Retorna o resultado executaDML = blnRetorno end function ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: SUB-ROTINA QUE EXECUTA UMA CONSULTA, ATRIBUINDO AO ARRAY PADRÃO ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Sub consulta(byVal pSql) ' ::: Pula os erros On Error Resume Next if pSql <> "" then ' ::: Abre a conexão com o banco call abreConexao() ' ::: Instancia o objeto recordset set oRs = server.createObject("ADODB.Recordset") ' ::: Executa a cláusula sql, atribuindo ao recordset set oRs = oConn.execute(pSql) ' ::: Tratamento de Erros if err <> 0 and cBlnDebug then response.write "Erro ao executar consulta<BR>" & _ "<b>Descrição:</b>" & err.description & "<BR>" & _ "<b>String:</b>" & pSql & "<BR>" response.end end if ' ::: Atribui o resultado do recordset ao array ' ::: Se a consulta não retornar valores, o valor virá numa string vazia "" aryDados = oRs.getRows() ' ::: Fecha o recordset oRs.close ' ::: Destrói instância do objeto set oRs = nothing ' ::: Fecha a conexão call fechaConexao() end if End Sub ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ' ::: SUB-ROTINA QUE EXECUTA UMA CONSULTA, ATRIBUINDO AO ARRAY PASSADO ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Sub consultaParam(byVal pSql, byRef pAry) ' ::: Pula os erros On Error Resume Next if pSql <> "" then ' ::: Abre a conexão com o banco call abreConexao() ' ::: Instancia o objeto recordset set oRs = server.createObject("ADODB.Recordset") ' ::: Executa a cláusula sql, atribuindo ao recordset set oRs = oConn.execute(pSql) ' ::: Tratamento de Erros if err <> 0 and cBlnDebug then response.write "Erro ao executar consulta<BR>" & _ "<b>Descrição:</b>" & err.description & "<BR>" & _ "<b>String:</b>" & pSql & "<BR>" response.end end if ' ::: Atribui o resultado do recordset ao array pAry = oRs.getRows() ' ::: Fecha o recordset oRs.close ' ::: Destrói instância do objeto set oRs = nothing ' ::: Fecha a conexão call fechaConexao() end if End Sub ' :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: %> Agora, dois exemplos, primeiro para executar um insert: <% Dim strSql strSql = "INSERT INTO pdt_produto(pdt_vchNome) VALUES('teste')" if executaDML(strSql) then response.write "Inclusão com sucesso!!" else response.write "Erro durante inclusão!" end if %> Executando uma consulta e escrevendo a lista: Dim strSql, i strSql = "SELECT campo1, campo2 FROM tabela" call consulta(strSql) if isArray(aryDados) then for i = 0 to uBound(aryDados,2) response.write "<tr>" & _ " <td>"&aryDados(0,i)&"</td>" & _ " <td>"&aryDados(1,i)&"</td>" & _ "</tr>" next end if É isso ai!!
×
×
  • Criar Novo...