Saturday October 18th 2008
Geral
Pessoal é apenas para avisar que este blog deixará de existir nos moldes que tem vindo a praticar desde o inicio. Quem estiver interessado pode acompanhar o blog noutro endereço http://muiomuio.com/blog/ embora com conteúdo ligeiramente diferente mas dentro do mesmo género.
Just to let you know that this blog will be continued at http://muiomuio.com/blog/
The URL will still exist but will be used for other purposes that have nothing to do with the ones that have been practiced so far.
O blog Puta Da Loucura está a promover um concurso com uns prémios interessantes entre eles um telemovel topo de gama como é o Nokia 2610
que por acaso eu quero
Portanto peço desculpa aos mais susceptíveis mas hoje vou falar de camisas de futebol e sobre a loja do mister Bfms no site compras.
Ou seja o que ele quer é promover o seu site e desenvolver links para o mesmo, portanto eu vou-lhe dar algo.
Não só é o link a negrito como ainda levas com um headline em cima 
Agora mais a sério, encontram-se lá umas tantas camisolas a preços bastante convidativos. Se queres uma camisola procura lá
Uma das formas de navegação introduzidas com o surgimento da Web 2.0 foi a navegação através de Tags.
Uma tag é nada mais nada menos que uma keyword que define algo. Se escrevo num site de informática sobre um processador, esse artigo pode ser marcado com uma keyword processadores, desta forma a pesquisa por artigos relacionados com processadores é simplificada.
Criar uma tag cloud não é um processo complexo. Básicamente precisas de ter uma fonte onde vais buscar as tags, normalmente é um vector onde são definidas e depois armazenadas em base de dados e a partir daí trabalhas o código. Vamos então começar.
< ?php
// cria a ligação á base de dados
$query = “SELECT coluna_da_bd AS tag, COUNT(id) AS quantity
FROM tabela
GROUP BY coluna_da_bd
ORDER BY coluna_da_bd ASC”;
$result = mysql_query($query);
No código em cima vamos seleccionar qual é a coluna da base de dados que vamos usar para definir as tags.
while ($row = mysql_fetch_array($result)) {
$tags[$row['tag']] = $row['quantity'];
}
$tags[$row['tag']] - vector $tag recebe as keywords da base de dados.
$row['quantity'] - devolve a quantidade de vezes que a keyword existe.
Exemplo
$tag[processadores] = 2; - A palavra processadores existe 2x na pesquisa efectuada.
A quantidade de vezes que a palavra existe é útil para definir o tamanho da tag.
$max_size = 300;
$min_size = 100;
Aqui defines o tamanho mínimo e máximo das fontes. Para que funcione bem com qualquer estilo definido no CSS prefiro interpretar os valores em percentagem (%) em vez de pixels ou qualquer outra medida.
$max_qty = max(array_values($tags));
$min_qty = min(array_values($tags));
Agora é preciso definir quais as keywords com os valores máximos e mínimos do vector $tags e saber qual é o alcance desses valores de forma a podermos calcular o tamanho da fonte.
$spread = $max_qty - $min_qty;
if (0 == $spread) {
$spread = 1;
}
Uma vez feito isso vamos agora determinar o tamanho da fonte.
$step = ($max_size - $min_size)/($spread);
foreach ($tags as $key => $value) {
// Vamos encontrar o $value superior a $min_qty
// multiplicamos esse valor pelo tamanho da fonte ($size)
// E adicionamos o $min_size definido anteriormente
$size = $min_size + (($value - $min_qty) * $step);
// Colocamos o valor em forma de poder ser calculado em percentagem (%)
$size = ceil($size);
// Adicionar link ás tags
echo '<a href="#" style="font-size: '.$size.'%"';
// ajustar o tooltip gerado pelo atributo title do link
echo ' title="'.$value.' ( '.$key.' )"';
echo '>'.$key.' ';
}
?>
E pronto se tudo correu bem deverás ter uma tag cloud. Para limitar os resultados mostrados na tagcloud basta definires o limite quando fazes a consulta á base de dados:
$query = "SELECT coluna_da_bd AS tag, COUNT(id) AS quantity LIMIT 25
Desta forma a tua tagcloud mostra 25 tags.
Mootools é uma framework em Javascript bastente leve e bastante útil. Pode simplificar trabalho, melhorar apresentação, e até mesmo melhorar a performance da user-experience num site.
Aqui ficam 10 Mootools Scripts que fazem exactamente isso:
Formulários Ajax Web 2.0 Style
Download: Web 2.0 Forms
Demo: http://www.stoutlabs.com/demos/formMagic_1.htm
Aumentar caixas de texto
Source: http://ejectmedia.net/examples/moo_textareas/
Formulários de Login
Download: http://joeabiraad.com/ajax/ajax-login-form-php-javascript/89
Demo: http://joeabiraad.com/demos/ajax2/
Calendários
Source: http://www.electricprism.com/aeron/calendar/
Validação de formulários
Source: http://www.phatfusion.net/validate/
Personalização de elementos de formulários
Source: http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/
Selecção múltipla
Source: http://www.wollzelle.com/os/multiple-select-widget/
iMask
Source: http://zendold.lojcomm.com.br/imask/
Auto Completion
Source: http://devthought.com/textboxlist-meets-autocompletion/