Alterar o valor de um campo do tipo “radio” a partir de um evento em JavaScript

Semana passada precisei fazer isso: alterar o valor de um campo radio a partir de um evento, que é feito de uma forma um pouco diferente que em outros campos, como uma caixa de texto comum, por exemplo.

Criei um modelo comentado para que você possa utilizar, caso precise. Para testar, copie em qualquer editor de texto simples (Notepad no Windows ou Gedit no Ubuntu) e salve como qualquercoisa.html Caso tenha dúvidas, poste nos comentários! 🙂

<html>
  <head>
    <script type="text/javascript">
      function mudaRadio(posicao) {
        /*
        Pela função "mudaRadio" é passada uma variável, que é a posicao do campo radio.
        Num grupo de radios, cada um tem um índice, que começa de 0, ou seja,
        o primeiro radio possui índice zero, o segundo índice um e assim por diante.
        Na linha abaixo, o valor do radio é alterado de acordo com a posição passada.
        */
        document.forms[0]['cores'][posicao].checked = 1;
      }
    </script>
  </head>
  <body>
    <form name="formulario">
      <input type="radio" name="cores" value="azul" />Azul
      <input type="radio" name="cores" value="verde" />Verde
      <input type="radio" name="cores" value="vermelho" />Vermelho
      <input type="radio" name="cores" value="amarelo" />Amarelo

      <br /><br /><br />

      <!-- O evento utilizado foi o onClick, mas poderia ter sido outro, a depender da sua necessidade -->
      <input type="button" name="btnAzul" value="Azul" onClick="mudaRadio(0)" />
      <input type="button" name="btnVerde" value="Verde" onClick="mudaRadio(1)" />
      <input type="button" name="btnVermelho" value="Vermelho" onClick="mudaRadio(2)" />
      <input type="button" name="btnAmarelo" value="Amarelo" onClick="mudaRadio(3)" />
    </form>
 </body>
</html>

Meu primeiro Tutorial sobre HTML

Revirando umas coisas antigas, acabei achando uma coisa bastante interessante: meu primeiro tutorial, sobre HTML.

Fiz ele em 2002, então não esperem muita coisa! Só queira compartilhar por ter achado interessante encontrar isso agora, praticamente 10 anos depois. E ainda está online* no host original: http://tiago.passos.free.fr/tiagopassos/documentohtml.html.

Não é a coisa mais bem escrita do mundo, mas acho que pode ajudar a quem está começando. 🙂

* Pelo menos estava até o dia que escrevi esse artigo.


Utilizando o teclado padrão Americano (EUA) com acentuação e pontuação

Se você possui um teclado americano e está tentando se adaptar a ele, pode estar passando por uma dificuldade bastante comum:

Como utilizar a acentuação e pontuação correta para o português?

Muita gente deixa a configuração do sistema operacional como ABNT2. Isso resolve o problema em parte para quem digita sem olhar para o teclado, porque as teclas ficam na mesma posição do teclado brasileiro. Mas pra quem não está tão acostumado com o teclado, as teclas em posições diferentes podem dar um pouco de dor de cabeça.S

Se você quizer utilizar dessa forma, tem duas dicas que podem te ajudar:

  1. ALT GR (o ALT da direita) + w é interrogação (?)
  2. ALT GR + q é barra (/)

Você pode ver todas as combinações que podem ser feitas com ALT GR aqui: http://en.wikipedia.org/wiki/AltGr_key#Brazilian_ABNT2_keymap

Uma solução que achei viável foi utilizar o seguinte padrão: EUA internacional (com teclas acentuáveis)*.

As teclas não são no mesmo lugar do padrão brasileiro (ABNT2), mas pelo menos você consegue digitar todos os acentos e pontuações que precisa.

Veja abaixo o modelo do teclado:

Algumas dicas:

  1. Se você apertar o ' + espaço, vai ser impresso ' (apóstrofo ou aspas simples)
  2. Se você segurar SHIFT + ' + espaço, vai ser impresso " (aspas duplas)
  3. Para utilizar um acento agudo, aperte ' + a letra que deseja acentuar
  4. Todas as teclas têm uma terceira e uma quarta função. Para acessar a terceira, basta segurar ALT GR (o alt da direita do teclado) + a tecla desejada. Veja na imagem acima as funções de cada tecla. Se alguém souber com acessar a quarta função da tecla, poste nos comentários! 🙂

Para alterar o layout do teclado no Ubuntu acesse o Menu Principal / Sistema / Preferências / Teclado e adicione o layout desejado. Lembre de remover o antigo.

E se nada der certo, você também pode comprar esses adesivos: http://lista.mercadolivre.com.br/adesivos-teclado-americano

* Essa nomenclatura é utilizada no Ubuntu. Talvez no Windows esteja diferente.


Retornando CPF ou CNPJ com pontuação com o PostgreSQL

Os CPFs e CNPJs em seu sistema estão cadastrados todos sem pontos, como é bastante comum. Mas agora você precisa trazê-los do banco já com a pontuação correta. Como fazer isso?

Utilizando a função SUBSTR do PostgreSQL, podemos separar um String (Varchar, por exemplo) em várias partes e depois concatenar com a pontuação desejada. Lembre-se que o campo deve estar como String. Se estiver como inteiro, você vai ter que converter utilizando o CAST. Vamos aos exemplos:

CPF

select substr(cpf, 1, 3) || '.' ||
       substr(cpf, 4, 3) || '.' ||
       substr(cpf, 7, 3) || '-' ||
       substr(cpf, 10) as cpf
       from (select cast('93746041597' as varchar) as cpf)a

CNPJ

select  substr(cnpj, 1, 2) || '.' || SUBSTR(cnpj, 3, 3) || '.' ||
        substr(cnpj, 6, 3) || '/' || SUBSTR(cnpj, 9, 4) || '-' ||
        substr(cnpj, 13) AS cnpj
        from (select cast('99325358000151' as varchar) as cnpj)a


Fonte: http://flaviosilveira.com/2009/tratando-cpf-cnpj-primeiro-nome-e-data-pelo-sql-postgre/


Adicionar zeros à esquerda em um código no PostgreSQL com a função LPAD

Você tem uma tabela nos PostgreSQL quem tem vários códigos, sendo alguns com dois caracteres, outros com três, e por aí vai. Mas como fazer para uniformizar a quantidade de caracteres, ou seja, deixar todos os códigos com a mesma quantidade de números, adicionando zeros à esquerda? Basta utilizar a função LPAD do PostgreSQL. Vamos ao exemplo:

select 
   lpad(cast(cod_curso as varchar),4,'0') as cod_curso 
   from cursos

No exemplo acima, o código do curso que possui 3 caracteres, por exemplo: 125, virou 0125. O código do curso com 2 caracteres, por exemplo: 15, virou 0015. E por aí vai.

Você pode fazer os testes utilizando o banco de testes.

Saiba mais sobre o LPAD aqui e aqui.


Vivo com atendimento por SMS!?

Lá vai você, ligar pra a Vivo. Todo feliz e contente porque em poucos minutos, um problema que te atormenta vai poder ser resolvido de forma rápida e eficiente pelos atendentes da Vivo.

Só tenha cuidado para no caminho não encontrar com um coelho branco, porque isso  acontece com Alice no País das Maravilhas. E todos sabemos que  o atendimento de operadoras de telefonia no deixa muito a desejar.

Quem já precisou resolver alguma coisa dessa forma sabe muito bem do que estou falando. Mas a Vivo veio com uma modalidade de atendimento que eu, até então, desconhecia: por SMS.

Você manda um SMS gratuito para 1058 e um atendente responde a mensagem em alguns minutos. A partir daí, você trocará mensagens com ele até a resolução do seu problema.

É claro que o sistema não é perfeito. Já ouvi pessoas falando que existe o mesmo passa-passa de atendente pra atendente que tem via telefone, que convenhamos, é ridículo.

O atendimento por SMS é o meio-termo entre ficar 45 minutos esperando um atendente, e o atendimento dado no mundo da fantasia.


Exemplos práticos de conjuntos, utilizando União (UNION), Interseção (INTERSECT) e Diferença (EXCEPT) com o PostgreSQL

Utilizar conjuntos no PostgreSQL, usando recursos como a União, Interseção e Diferença podem ser bastante úteis no dia-a-dia. O mais utilizado é a União, mas a Interseção e Diferença também são necessárias em muitos momentos. Disponibilizei também uma base de testes, que você pode utilizar para testar os exemplos que vou mostrar aqui.

 

Para que funcionem corretamente, é necessário que os selects utilizados tenham o mesmo número de colunas e dados do mesmo tipo.

União (UNION E UNION ALL)
O UNION serve para juntar ou unir dois selects, um abaixo do outro. As linhas repetidas são ignoradas.

Exemplo 1.

SELECT nom_prof AS nome FROM professores
UNION
SELECT nom_alu AS nome FROM alunos

No exemplo 1, o primeiro select retorna os nomes de todos os professores, e o segundo retorna o nome de todos os alunos. O UNION junta todos os nomes em uma única lista.

O UNION ALL é bastante semelhante ao UNION. A única diferença é que as linhas repetidas são exibidas.

Exemplo 2:

SELECT nom_prof AS nome FROM professores
UNION ALL
SELECT nom_alu AS nome FROM alunos

O exemplo 2 faz a mesma coisa do exemplo 1, com a diferença que as linhas repetidas são exibidas no exemplo 2.

Interseção (INTERSECT)
Exibe apenas os registros que estão nos dois selects.

Exemplo 3:

SELECT nom_prof AS nome FROM professores
INTERSECT
SELECT nom_alu AS nome FROM alunos

Diferença (EXCEPT)
São exibidas as linhas que estão no primeiro select, mas não estão no segundo select.

Exemplo 4:

SELECT nom_prof AS nome FROM professores
EXCEPT
SELECT nom_alu AS nome FROM alunos

Exemplos práticos de SELECTs simples com o PostgreSQL

O SQL é uma linguagem padrão para os bancos de dados relacionais, como o MySQL e SQL Server, mas como a sintaxe pode mudar um pouco de um SGBD para outro, resolvi fazer esse pequeno artigo com alguns exemplos práticos de alguns selects simples com o PostgreSQL. Disponibilizei também uma base de testes, que você pode utilizar para testar os exemplos que vou mostrar aqui.

Exemplo 1:

SELECT mat_alu AS matricula, nom_alu AS nome
FROM alunos

No exemplo acima estou trazendo a matrícula e o nome dos alunos que constam na tabela alunos.

Exemplo 2:

SELECT mat_alu AS matricula, nom_alu AS nome
FROM alunos
WHERE cod_curso = 10

No exemplo 2, utilizei a clausula WHERE para trazer apenas os alunos do curso com código 10.

Exemplo 3:

SELECT mat_alu AS matricula, nom_alu AS nome
FROM alunos
WHERE cod_curso = 10 or cod_curso = 8

No exemplo 3, trago apenas os alunos de cursos dos cursos de código 8 ou 10

Exemplo 4:

SELECT mat_alu AS matricula, nom_alu AS nome
FROM alunos
WHERE nom_alu like 'A%'

No exemplo 4, trago todos os alunos que tem o nome começado pela letra 'A'


Controle Acadêmico: Banco de Dados PostgreSQL para Estudo/Treinamento com Estrutura em Português

Algum tempo atrás postei um artigo com um banco de dados de exemplo para MySQL. Agora resolvi postar um para PostgreSQL. Tem uma estrutura bem diferente: é um controle acadêmico (simplificado, é claro). É bastante útil se você estiver estudando o PostgreSQL ou ministrando um treinamento básico.

Para fazer o download da base de dados, clique aqui.

Caso você precise da base de dados para algum trabalho acadêmico ou qualquer outro uso, fique à vontade para usar!


Primeiro 10GB, depois 50GB, agora 512GB de armazenamento grátis!

Parece meio irreal, mas é verdade.

O BeeCloud te dá 512GB de espaço grátis pra você guardar seus arquivos!

O funcionamento é mais ou menos parecido com o Dropbox e o SpiderOak, só que a grande diferença é que você já ganha os 512GB de cara. Não precisa convidar ninguém!

A desvantagem é que ainda não tem versão pra Linux :~~~ mas como eles já fizeram uma pra Mac, tenho esperança que em breve saia uma versão que rede no Ubuntu.

Não vou mentir pra vocês. Não pude testar o serviço direito (porque não uso Windows), então não posso colocar minha mão no fogo pelo serviço (como coloco pelo Dropbox).

Mas se alguém quizer testar e ver se presta, e quizer postar nos comentários, ficarei muito feliz. E aposto que outros visitantes também!

O serviço também tem planos pagos, que possui alguns recursos adicionais como acesso FTP / SFTP, por exemplo. Dê uma olhada aqui e veja se algum te agrada. 🙂


  • Publicidade

  • Redes Sociais

    Facebook  Twitter
  • Estatísticas

    Page Views (desde março de 2010):

    Estatísticas detalhadas
  • Novidades por e-mail!

    Digite seu e-mail:


    Fique tranquilo. Seu e-mail não será usado para outros fins, e você poderá se descadastrar quando quizer.

    Eu!

    Tiago Passos
    Todo o conteúdo desse site esta licenciado sob a licença Creative Commons 3.0 (CC BY 3.0). Você pode copiar e modificar o conteúdo desde que cite o autor.
    iDream theme by Templates Next | Powered by WordPress