Uma dica para quem trabalha com atribuição de eventos e precisa impedir o browser de executar uma ação padrão, como o click de um botão ou submit de um form: método preventDefault();
É um método que existe por padrão, no evento dos browsers, e você pode utilizá-lo ao invés de retornar false para evitar a execução do evento original.
Apenas chame o método a partir da variável que contém o evento.
Ex.:
function submitForm(event) {
event.preventDefault(); //previne que o browser submeta o form
seu código personalizado;
}
Fácil mas muito útil!
segunda-feira, 18 de julho de 2011
sexta-feira, 29 de abril de 2011
Função empty do PHP e importância de ler a documentação
Um exemplo rápido que me pegou desprevinido por não ler atentamente a documentação: a função empty do PHP retorna TRUE para um array com um indice de valor nulo.
Ex.: ARRAY[ 0 => null ]
Está certo que eu esperava um array vazio, mas na conversão do xml para a aplicação ele criou este índice. Quando verifiquei o que estava acontecendo, primeiramente imprimindo o valor da variável, achei que o teste deveria retornar TRUE pois zero => null = NADA não é mesmo?
Lendo rapidamente a documentação (no site oficial, SEMPRE) ele afirma que o empty retorna TRUE apenas para um array TOTALMENTE vazio, ou seja:
ARRAY[]. Faz sentido, afinal 0 no array será um índice, e não, NADA.
Por isto, sempre é bom conhecer bem a função que você está utilizando e verificar possíveis outputs que você atribuirá (ou receberá como no meu caso) para as variáveis.
That's it!
Ex.: ARRAY[ 0 => null ]
Está certo que eu esperava um array vazio, mas na conversão do xml para a aplicação ele criou este índice. Quando verifiquei o que estava acontecendo, primeiramente imprimindo o valor da variável, achei que o teste deveria retornar TRUE pois zero => null = NADA não é mesmo?
Lendo rapidamente a documentação (no site oficial, SEMPRE) ele afirma que o empty retorna TRUE apenas para um array TOTALMENTE vazio, ou seja:
ARRAY[]. Faz sentido, afinal 0 no array será um índice, e não, NADA.
Por isto, sempre é bom conhecer bem a função que você está utilizando e verificar possíveis outputs que você atribuirá (ou receberá como no meu caso) para as variáveis.
That's it!
Marcadores:
documentação,
empty(),
função,
PHP,
Programação
segunda-feira, 25 de abril de 2011
Calculo de dias com campos data no POSTGRESQL
Para retirar a quantidade de dias baseada em um campo de data ou timestamp, o POSTGRESQL permite realizar estes cálculos de maneira bem prática.
Como exemplo, tenho o campo locacoes.saida (timestamp da tabela locacoes) de um DVD. Quero calcular quantos dias, até agora, ele esta com o cliente sem levar em conta as horas:
SELECT (CURRENT_DATE - locacoes.saida::date) FROM locacoes;
O resultado desta conta será o total de dias que se passaram da data de saida do DVD. Repare que o TYPECAST para date é importante, e somá-lo a outro tipo DATE também. Se ao invés disto, vc fizer:
SELECT (NOW() - locacoes.saida) FROM locacoes;
ele retornará algo como: "4 days 17:51:23.338403" que é o tipo INTERVAL no banco, levando em conta as horas.
Existem mais coisas que se pode fazer com datas no POSTGRESQL, leia a seção no manual do postgresql que é muito interessante.
Thats it!
Como exemplo, tenho o campo locacoes.saida (timestamp da tabela locacoes) de um DVD. Quero calcular quantos dias, até agora, ele esta com o cliente sem levar em conta as horas:
SELECT (CURRENT_DATE - locacoes.saida::date) FROM locacoes;
O resultado desta conta será o total de dias que se passaram da data de saida do DVD. Repare que o TYPECAST para date é importante, e somá-lo a outro tipo DATE também. Se ao invés disto, vc fizer:
SELECT (NOW() - locacoes.saida) FROM locacoes;
ele retornará algo como: "4 days 17:51:23.338403" que é o tipo INTERVAL no banco, levando em conta as horas.
Existem mais coisas que se pode fazer com datas no POSTGRESQL, leia a seção no manual do postgresql que é muito interessante.
Thats it!
Marcadores:
Banco de dados,
Cálculo dias campo Date,
Date,
Interval,
postgreSQL,
Timestamp
segunda-feira, 28 de fevereiro de 2011
A rede social: nada de novo...
Assisti o filme "A rede social" neste final de semana.
Oscar? Roteiro original? "Pera" lá né Holywood, só um idiota para aclamar tanto assim um filme que conta a história banal de mais um programador tentando alavancar um projeto na web. A diferença? Uma sucessão de acontecimentos a favor do nosso "herói" mas que a sorte apenas escolheu como sendo Zuckerberg.
Poderia ser qualquer um de nós, quem já não teve um projeto como este? Uma idéia, original ou não, com muitas horas de programação e pouca grana para tocar. O Orkut já não existia? Existia sim! O que diferenciou o Facebook dos outros? Exclusividade. Sim, o Orkut também necessitava de convites, mas no Facebook, somente quem era de Harvard poderia entrar.
Parabéns ao cara por ele ser um escroto com caruda suficiente para deixar para trás até o melhor amigo...
Mas tudo bem, ele é bilionário e nós estamos aqui, tentando...
Oscar? Roteiro original? "Pera" lá né Holywood, só um idiota para aclamar tanto assim um filme que conta a história banal de mais um programador tentando alavancar um projeto na web. A diferença? Uma sucessão de acontecimentos a favor do nosso "herói" mas que a sorte apenas escolheu como sendo Zuckerberg.
Poderia ser qualquer um de nós, quem já não teve um projeto como este? Uma idéia, original ou não, com muitas horas de programação e pouca grana para tocar. O Orkut já não existia? Existia sim! O que diferenciou o Facebook dos outros? Exclusividade. Sim, o Orkut também necessitava de convites, mas no Facebook, somente quem era de Harvard poderia entrar.
Parabéns ao cara por ele ser um escroto com caruda suficiente para deixar para trás até o melhor amigo...
Mas tudo bem, ele é bilionário e nós estamos aqui, tentando...
Marcadores:
A rede social,
Crítica,
Facebook,
Filmes
quarta-feira, 9 de fevereiro de 2011
Apagão no Nordeste
Sério.
Falem sério.
A desculpa que conseguiram dar até agora para o apagão foi de que "um cartão magnético emitiu um sinal errado blah blah blah blah blah..." ops, me perdi no sinal errado, desculpe.
Muita besteira em uma frase só. Que desculpa mais esfarrapada. Cartão magnético emitindo sinal? Estes senhores estão ofendendo minha inteligência. Nossa inteligência... Quer dizer, inteligência de alguns brasileiros... Quer dizer, inteligência de poucos brasileiros, afinal, os eleitores deles acreditaram nisso...
Esconder o real motivo porque?
Sério.
Tá de brincadeira?
SÉRIO!
Falem sério.
A desculpa que conseguiram dar até agora para o apagão foi de que "um cartão magnético emitiu um sinal errado blah blah blah blah blah..." ops, me perdi no sinal errado, desculpe.
Muita besteira em uma frase só. Que desculpa mais esfarrapada. Cartão magnético emitindo sinal? Estes senhores estão ofendendo minha inteligência. Nossa inteligência... Quer dizer, inteligência de alguns brasileiros... Quer dizer, inteligência de poucos brasileiros, afinal, os eleitores deles acreditaram nisso...
Esconder o real motivo porque?
Sério.
Tá de brincadeira?
SÉRIO!
Marcadores:
Apagão,
cartão magnético,
energia elétrica,
Nordeste
domingo, 12 de setembro de 2010
Open SSL e Certificados no Apache: autenticação mútua
O melhor guia que encontrei para autenticação mútua entre Apache e Cliente.
Contém um tutorial para gerar: CA, chaves, certificados e tudo que você precisa para um ambiente de desenvolvimento com certificados digitais para web:
http://www.cafesoft.com/products/cams/ps/docs30/admin/ConfiguringApache2ForSSLTLSMutualAuthentication.html
Isso aí!
Contém um tutorial para gerar: CA, chaves, certificados e tudo que você precisa para um ambiente de desenvolvimento com certificados digitais para web:
http://www.cafesoft.com/products/cams/ps/docs30/admin/ConfiguringApache2ForSSLTLSMutualAuthentication.html
Isso aí!
Marcadores:
Apache,
Certificado Digital,
Open SSL
sábado, 11 de setembro de 2010
Recriações de jogos dos anos 80!
http://www1.folha.uol.com.br/multimidia/videocasts/796802-pac-man-humano-usa-111-pessoas-para-recriar-jogo-classico.shtml
Marcadores:
Curiosidade,
Dica,
Pac Man
Assinar:
Postagens (Atom)