Arquivo de novembro 2007

Classe PHP para conexão com banco de dados MySQL

Disponibilizo, neste post, uma classe PHP para conexão com banco de dados MySQL.

Há alguns meses atrás, criei uma classe PHP para conexão com banco de dados MySQL. Nada muito complexo - chega a ser até bem simples, na verdade. Ela possui a capacidade de se conectar a 1 servidor por vez e foi feita utilizando orientação a objetos; com ela, pode-se fazer qualquer operação SQL, tal como insert, select, update, delete, etc.

O arquivo está bem comentado, a meu ver, e, creio, não haverá maiores problemas para entender seu funcionamento.

Tudo o que se deve fazer, para começar a utilizá-la, é preecher os valores de algumas constantes, logo no início do código. Opcionalmente, pode-se alterar as mensagens para cada tipo de erro.

Também, lembrar-se de referenciar corretamente o link de “voltar” para quando cada erro acontece.

Vamos a um exemplo de uso. Inicialmente, deve chamar a classe - vou considerar que ela está na mesma pasta, para o exemplo.

Aí, como vocês podem constarar na própria codificação, há um parâmetro a ser passado, no momento da chamada do método construtor. Esse parâmetro é a query que se quer fazer. Vamos fingir que temos uma tabela “usuarios” e queremos pegar o nome todos os cadastrados.

1
2
3
4
5
<?php
[...]
Conexao("SELECT nome FROM usuarios");
[...]
?>

Mas, dependendo da aplicação, é certo de não se limitar a somente uma query por página. Então, para cada consulta SQL que quisermos efetuar, não é preciso que se chame o método construtor. Conforme o manual oficial do PHP, a respeito da função “mysql_query”:

A conexão MySQL. se o identificador de conexão não for especificado, a ultima conexão aberta por mysql_connect() é assumida. Se uma conexão assim não for encontrada, ela irá tentar criar uma como se a função mysql_connect() fosse chamada sem argumentos. Se uma conexão não for encontrada ou estabelecida, um aviso de nível E_WARNING é gerado.

Então, depois da primeira chamada do método contrutor, caso se queira realizar outra query, basta chamar a função nativa mysql_query que, conforme as especificações oficiais, o script utilizará a última conexão aberta. Se, depois da consulta ao nome dos usuarios, quiséssemos saber cada idade, por exemplo, bastaria:

1
2
3
4
5
<?php
[...]
mysql_query("SELECT idade FROM usuarios");
[...]
?>

Então, o “mini-script” de exemplo ficaria:

1
2
3
4
5
6
7
8
9
<?php
[...]
require_once("Conexao.php");
[...]
Conexao("SELECT nome FROM usuarios");
[...]
mysql_query("SELECT idade FROM usuarios");
[...]
?>

Até hoje a classe PHP tem me servido bem, mas se alguém tiver algum conselho de como a classe pode ser melhorada, eu aceito! :-)

Adicionar artigo ao Rec6    Adicionar artigo ao Linkk    Adicionar artigo ao doMelhor    Adicionar artigo ao del.icio.us   Postar artigo no StumbleUpon!

60 tutoriais de Photoshop

Indico, neste artigo, um web site com 60 tutoriais de Photoshop.

O Mozart me enviou por email um site com referência para 60 tutoriais de Photoshop. Na verdade o nome real é “60 Advanced Photoshop Tutorials“, mas, como alguns eu não achei nada avançados e, outros, limitam-se a praticamente mostrar algo sendo feito, sem maiores explicações, coloquei isso mesmo…

Aproveitando o ensejo, saibam que o site em que esta página está, apresenta excelentes listas relacionadas ao desenvolvimento para web!

Adicionar artigo ao Rec6    Adicionar artigo ao Linkk    Adicionar artigo ao doMelhor    Adicionar artigo ao del.icio.us   Postar artigo no StumbleUpon!

Identificador de fontes

Nesta postagem, indico um web site que identifica qual fonte foi utilizada para compor uma imagem.

Estava eu elaborando um layout quando surgiu a necessidade de se aplicar uma fonte “diferente” ao projeto. Consultando meus arquivos, encontrei uma que poderia servir. Entretando, quem encomendou o projeto não se deu por satisfeito…

Entrou em um site, na minha frente, apontou o dedo para o monitor e disse algo mais ou menos como “Eu quero esta fonte!“.

Se o que o cliente escolheu não tem a ver com o design do site, como um todo, se é destoante, não combina ou, em último caso, feio - sim, porque tem cliente que tem péssimo gosto e ainda por cima acha que tudo que faz/escolhe é o melhor do mundo… -; felizmente, a fonte escolhida combinou e é bonitinha! :-)

O fato é que, pesquisando, encontrei o What The Font?!, aplicativo que identifica a fonte que foi utilizada em alguma imagem.

Um detalhe, pessoal, é que esse endereço URI que aparece no tutorial é do meu antigo blog, já que este artigo sobre identificador de fontes foi originalmente publicado lá. Com isso em mente, continuemos!

É bem simples de mexer. Basta fazer upload da imagem que quiser ou indicar a URL.

screenshot da tela de upload

Vou utilizar esta imagem para o teste:

imagem para testes: tarciozemel.asciijf.com

Depois, você dá uma ajudinha para o software, identificando algumas das letras para que ele identifique direitinho a fonte.

screenshot da tela que é preciso identificar algumas letras

Para finalizar, ele apresenta uma tela com os possíveis resultados da identificação da fonte e uma prévia do texto - um pouco maluco… - com cada uma aplicada.

screenshot da tela com o resultado da identificação da fonte

Percebam que cada indicação da fonte é um link; é possível, clicando em cada um, ir a um web site para comprar a fonte… Isso é “marketing! Indo a bons sites de fontes grátis, é possível encontrar a maioria.

Eu testei diversas fontes no What The Font?!, para testá-lo; posso dizer, com base nas fontes que utilizei, que a taxa de acerto foi de, mais ou menos, 80%. Na imagem de teste deste artigo, por exemplo, o primeiro resultado já é o certo: Monotype Corsiva.

Pessoalmente, considero o sistema muito bom e muito útil! Antes de encontrar o site, eu mesmo passei por 2 ou 3 perrengues por não saber qual foi determinada fonte utilizada em uma composição. Por essas e outras, indico o What The Font?! e faço votos de que seja bastante útil!

Referências Nacionais

Sofontes
Site brasuca que disponibiliza diversas fontes para download.

Fontes True Type
O diferencial deste é que você escolhe com qual letra começa o nome de sua fonte e uma respectiva lista é apresentada.

Referências Internacionais

Todos os sites indicados aqui são para baixar fontes.

Abstract Fonts

dafont.com

FontFace.com

Fawnt

Adicionar artigo ao Rec6    Adicionar artigo ao Linkk    Adicionar artigo ao doMelhor    Adicionar artigo ao del.icio.us   Postar artigo no StumbleUpon!

“Acessibilidade Web: Sete Mitos e Um Equívoco”

Neste artigo, indico uma apresentação de slides que mostra 7 mitos e 1 equívoco sobre acessibilidade na web.

Já não é tããão recente essa, mas, para não ficar de fora, também vou colocar a apresentação de slides da Lêda Spelta sobre os mitos da acessibilidade web, que foi mostrada no 1º Encontro Brasileiro de Arquitetura de Informação.

Ah, e confiram, também, o artigo sobre o tema, da própria autora dos slides.

Adicionar artigo ao Rec6    Adicionar artigo ao Linkk    Adicionar artigo ao doMelhor    Adicionar artigo ao del.icio.us   Postar artigo no StumbleUpon!

CSS mínimo

Neste artigo, apresento uma proposta para um arquivo CSS mínimo, quer dizer, as declarações que, ao meu ver, são indispensáveis para uma folha de estilos.

O que me levou a escrever este artigo

Nos últimos dias, tive alguns problemas com arquivos CSS que tive que alterar - e que não fui eu, originalmente, quem os fiz. Cada desenvolvedor web tem seu estilo de codificação, isso é fato; outro fato é que fica complicado de prestar manutenção no trabalho alheio, caso os desenvolvedores não tenham acordado padrões de codificação entre si. Foi o meu caso…

Neste artigo, não tentarei apresentar modelos de codificação CSS, sugestões de como se deve posicionar as chaves, e como deve ser a identação dos textos. Estou focando nas regras, propriamente ditas, e não em como cada um prefere organizar seu código. Para tal, o Bruno Dulcettitratou muito bem, em seu blog.

Como não desejo que o mesmo aconteça com as outras pessoas, decidi apresentar como seria, na minha opinião e não muito extensos conhecimentos em CSS, algumas regras indispensáveis para qualquer folha de estilos.

Para constar, gostaria de deixar registrado que uma das bases do que vou apresentar aqui foi tirada da compilação 70 Expert Ideas For Better CSS Coding, do Smashing Magazine - e traduzida pelo Maujor, em seu blog; outra, vem do meu próprio conhecimento e experiência com CSS.

Sem mais enrolações, vamos ao que interessa!

“Zerar” os elementos

Para começar, é mais do que importante zerar, no o seletor universal, margin e padding:


* {
margin:0;
padding:0;
}



[update]
O Pedro Rogério falou sobre uma maneira melhor de zerar os elementos. Maneira essa que coloco aqui, também.
[/update]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
vertical-align: baseline;
background: transparent;
}
 
body {
line-height: 1;
}
 
ol, ul {
list-style: none;
}
 
blockquote, q {
quotes: none;
}
 
:focus {
outline: 0;
}
 
ins {
text-decoration: none;
}
 
del {
text-decoration: line-through;
}
 
table {
border-collapse: collapse;
border-spacing: 0;
}

Podem ter certeza de que somente isso evitará, pelo menos, uma dezena de problemas com posicionamento - Eric Meyer, Christian Montoya e Roger Johansson, por exemplo, recomendam tal prática.

Um font-size “especial” para html

O próximo - e, aparentemente, excêntrico - passo é colocar um valor “especial” para font-size, na estilização do html:

1
2
3
html {
font-size:100.01%;
}

Essa veio, também, das 70 dicas, e a explicação é a seguinte:

Este estranho valor de 100.01% para o tamanho de fonte, corrige uma série de bugs em diversos navegadores. Primeiro, definir um tamanho de fonte no elemento body em percentagem (no lugar de EM) previne um problema no IE/Win que tende a aumentar ou diminuir desproporcionalmente o tamanho de fontes para textos contidos dentro de elementos onde for definido tamanho de fonte em EM. E mais, algumas versões do Opera renderizam tamanhos default de 100% para fontes muito menores, comparadas com outros navegadores. Safari, por sua vez não se comporta bem com font-size igual a 101%.

Retirar a borda feia das imagens que são link

Quando se coloca uma imagem para servir de link, uma borda aparece para indicar isso. Entretanto, ela é muito feia e, na maioria das vezes, “quebra” toda a harmonia do design web que está sendo utilizado. Para resolver isso, basta zerar o border do elemento img:

1
2
3
img {
border:0;
}

O tal “CSS mínimo”

Então, o arquivo final - ou seria “inicial”? :-) - ficaria da seguinte maneira:


* {
margin:0;
padding:0;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
vertical-align: baseline;
background: transparent;
}
 
body {
line-height: 1;
}
 
ol, ul {
list-style: none;
}
 
blockquote, q {
quotes: none;
}
 
:focus {
outline: 0;
}
 
ins {
text-decoration: none;
}
 
del {
text-decoration: line-through;
}
 
table {
border-collapse: collapse;
border-spacing: 0;
}
 
html {
font-size:100.01%;
}
 
img {
border:0;
}

Por fim…

Essas dicas que eu coloquei são meras “medidas de segurança”, a fim de se evitar problemas com estilizações. Certamente outras mais existem, porque, a cada dia, uma nova técnica e/ou maneira de se codificar aparece - e/ou a própria tecnologia é aperfeiçoada. Quem conhecer mais dicas, macetes e artimanhas para um CSS mínimo, por favor, coloque um comentário aqui ou me envie um email para eu possa atualizar o artigo.

Ah! E confiram as 70 dicas de CSS, porque realmente são muito boas!

Adicionar artigo ao Rec6    Adicionar artigo ao Linkk    Adicionar artigo ao doMelhor    Adicionar artigo ao del.icio.us   Postar artigo no StumbleUpon!