codigojavascript

Seis maneiras de deixar o Yum mais rápido no Fedora

Gary Richmond
12/01/2009

Six ways to speed up Yum on Fedora
Autor original: Gary Richmond
Publicado originalmente no:
freesoftwaremagazine.com
Tradução: Roberto Bechtlufft

Já faz alguns anos que vez sim, vez não eu uso o Fedora (desde os tempos do Core), e descontando a atitude parcimoniosa dele com relação a codecs, a coisa que mais acaba comigo é ver o Yum instalando um software. A velocidade dele é comparável à de um rio de melado no pólo Norte. Enquanto o Yum põe a mesa e separa os talheres, o apt-get já comeu e foi para casa dormir. Sem falar que o programa é prolixo demais, como você vai notar depois de usá-lo por um tempo. Existe algum jeito de arrancar esse gerenciador de pacotes do sofá e mandá-lo para uma bela malhação na academia?

A culpa não é do hardware

Você deve estar pensando: "aposto que você está rodando o Fedora em um computador do tempo em que os dinossauros dominavam a Terra, certo?" Bem, sim e não. Eu rodava o Fedora Core 5 nessa máquina arcaica com um processador Celeron meio manco de 400 MHz, então você talvez não esteja de todo errado, mas não notei grandes melhorias na velocidade quando instalei versões mais recentes do Fedora em desktops e laptops mais poderosos, com processadores na faixa dos 2.600 MHz. Toda vez que vinham com esse hype eu acreditava. "O Yum está mais rápido do que nunca", diziam eles. Vai lá, instala o Fedora e confere! E eu conferia. Mas ao invés de um tigre enfurecido, o que eu encontrava era uma baleia encalhada. Problemas com o hardware? Acho que não. Afinal, há anos que uso distros com o apt-get em computadores de velocidades diferentes, mas ele sempre cumpre o que promete, enquanto o Yum parecia ferir o código de defesa do consumidor. Em termos de velocidade, ainda não vi nada que se compare ao apt-get. Então, o que fazer para colocar o Yum no páreo e não mandá-lo para um país distante montado em um pangaré?

Yum pela linha de comando?

Estou sempre à caça de interfaces para ferramentas de linha de comando, especialmente para gerenciadores de pacotes. Sacrifica-se um pouco de controle e da capacidade de resolver problemas, mas ganha-se facilidade de uso e uma relativa transparência — e com interfaces como o Synaptic, você não vai se decepcionar. Pouco se perde em termos de velocidade. E é assim que deve ser. Já o Yum é outra história. Instale e inicie o Kyum ou o Yumex e você terá duas interfaces bonitas e cheias de recursos para o Yum, só que as duas reduzem o usuário a um estado de paralisia catatônica com sua lentidão absurda, especialmente no caso do Yumex. Eu sei que verificar transações e chaves é importante, mas parece que essas interfaces conseguem deixar até isso lento. Mesmo o Packagekit, a nova interface do Yum desde o Fedora 9, não é nenhum maratonista. Sim, para usar o Yum pela linha de comando você vai ter que decorar algumas coisas, mas acredite, depois que você estiver prestes a perder a vontade de viver enquanto o Kyum faz uma instalação simples (no caso do Yumex é pior ainda), vai achar que memorizar alguns comandos é um pequeno preço a pagar para não ter ataques de fúria nas instalações.

Que tal esperar menos?

Bom, na verdade você vai continuar tendo que esperar um pouco. Se iniciar o Yumex pelo menu de aplicativos ou pelo ícone do desktop com as configurações padrão, vai precisar de um livro para passar o tempo enquanto ele trabalha. A minha versão do Yumex, pelo visto, não tem mais um recurso que tinha antes: a capacidade de usar perfis, como no Firefox. Dentre outras coisas, isso permitia ao usuário desativar a atualização dos metadados e usar o cache local. Pelo visto, a opção não existe mais. Tentei usá-la mas o resultado foi a interface normal, então vamos precisar de outro jeito de ganhar velocidade.

Para acelerar o Yum vamos ter que editar seu arquivo de configuração. Se você abrir esse arquivo em seu editor de texto favorito, vai ver que há um tempo de validade padrão para a atualização dos metadados. Esse tempo era de trinta minutos, mas agora aumentou para noventa. Nem o mais dedicado ou prolífico instalador de software precisa estar tão atualizado; aumentar bastante esse tempo deve dar uma boa ajuda na lentidão. Defina um valor condizente com seus hábitos e veja como a velocidade aumenta. Se preferir, defina uma padrão realmente alto, equivalente a uma atualização por semana. Se você não gosta de arquivos de configuração, a maneira rápida de resolver isso é digitar yum -C install <seu aplicativo>. O C faz o Yum ignorar a atualização dos cabeçalhos, rodando com o que estiver no cache. Fazendo isso, mais cedo ou mais tarde você vai querer sincronizar o cache local de metadados com os repositórios. Para isso, digite yum makecache periodicamente para sincronizar com as atualizações do Fedora. Mas em última análise, parece que o verdadeiro problema do Yum está em sua lentidão para analisar XML e na transformação de strings de C em strings do Python. Hackear a configuração dos metadados é provavelmente a melhor coisas que você pode fazer para acelerar o Yum, mas há outras possibilidades. Elas não são tao poderosas, mas somadas podem ajudar o Yum a pisar no acelerador.

Espelho, espelho meu, existe alguém mais rápido do que eu?

Parece haver uma idéia de que mirrors locais de repositórios são mais rápidos, mas isso nem sempre se aplica, como qualquer um que já tenha tentado baixar uma ISO de GNU/Linux em mirrors diferentes pode atestar. Com a próxima dica você não vai ter que adivinhar qual é o mirror mais rápido. Que entrem em cena os plugins do Yum.

É simples: basta digitar o comando a seguir em um console: yum install yum-fastestmirror. Só isso. De agora em diante o Yum vai escolher o mirror mais rápido sempre que for instalar um software. Se ainda quiser excluir alguns domínios para melhorar mais as coisas, abra o arquivo /etc/yum/plugin conf.d/fastest mirror.conf como root em seu editor de texto favorito e adicione a linha exclude=.ee/ .dk para excluir sites da Estônia e da Dinamarca, por exemplo (dá para obter uma lista de abreviações dos domínios de países na Wikipédia). Por padrão, o fastestmirror do Yum refaz os cálculos a cada dez dias, mas se você instala muito software vai querer forçar a verificação com um rm /var/cache/yum/timedhosts.text para obter os mirrors mais rápidos do momento.

Chame a Força Delta!

A maioria dos leitores deve conhecer os backups diferenciais e incrementais. O princípio é conhecido e consolidado, e pode ser aplicado na área de gerenciamento de pacotes. Normalmente, quando há uma atualização de software disponível, o Yum baixa e instala a atualização para você, e ela pode ser muito parecida com a versão anterior. Ao atualizar programas grandes, como o OpenOffice.org, você com certeza vai gostar de poder reduzir o peso na banda (há uma grande diferença entre 8 Kb e 120 MB). Os Delta RPMs cuidam disso para você. Com eles, o Yum baixa apenas as diferenças (delta=diferença) entre os pacotes, e não o pacote inteiro.

Esse recurso extremamente útil pode ser ativado com a instalação do plugin presto (yum install yum-presto). O Fedora pretende incluir o recurso por padrão no Fedora 11, mas os Delta RPMs já devem estar disponíveis nos repositórios do Yum. Eu estou usando já faz algum tempo.

Verifique, ignore e exclua antes de atualizar

Caso não use as dicas anteriores (ou mesmo usando), uma maneira de acelerar o Yum é simular uma atualização com um yum check-update, identificar as atualizações grandes que deseja excluir e seguir com a opção exclude: yum update --exclude=openoffice --exclude=firefox. Você pode adicionar quantos pacotes quiser. Dica: se também quiser excluir pacotes com nomes semelhantes, adicione um asterisco: yum update --exclude=openoffice* --exclude=firefox*. Somado aos Delta RPMs, isso poupa espaço e, no caso do Firefox, garante que os addons e plugins não vão parar de funcionar. Para fechar, você pode conseguir um leve aumento na velocidade mandando o Yum ignorar dependências quebradas. Basta um simples yum install yum -skip-broken. Após essa instalação, o Yum passará a ignorar pacotes com problemas de dependências.

Instale um gerenciador de pacotes melhor (?)

Sem dúvida, o Yum melhorou substancialmente ao longo dos anos, mas não é o único gerenciador de pacotes que existe. Portar aplicativos entre distros é um hobby popular na Unixlândia, e os gerenciadores de pacotes não são uma exceção. Dois deles se destacam: o Apt4Rpm e o Smart. E há ports para o Fedora. Se a velocidade e a resolução de dependências estão acabando com sua festa no Fedora, experimente-os.

Apt4rpm

O suporte do Apt4rpm ao Yum foi incluído em maio de 2004 (versão 0.68.2), mas são raros os binários para versões recentes do Fedora. Se não encontrá-lo nos seus repositórios, baixe uma cópia no Sourceforge. O inferno de dependências ainda vive: ele é como uma hidra, e uma de suas cabeças está sempre pronta a atacar. Nessas horas em que o Yum falha, o Apt4rpm pode tirar você do inferno. Segundo uma piada geek, o Apt é o que o Yum quer ser quando crescer.

Smart

Os usuários do Debian gostam de caçoar dos devotos do Fedora, chamando-os de usuários de calças curtas do apt. Os desenvolvedores do gerenciador de pacotes Smart não deixam a peteca cair, e dizem que o algoritmo que move o Smart faz o apt-get parecer uma menininha. Pela minha experiência pessoal, posso atestar que em momentos nos quais o apt-get falhou o Smart deu conta do recado. Caso não o encontre nos repositórios do Fedora, você pode baixar binários para vários distros na homepage do Smart (além dos tradicionais pacotes tar compactados). Só que os binários estão um tanto defasados, então dê uma passada no RPMpbone e baixe um binário para o Fedora. Sua experiência com o Apt4rpm e com o Smart pode ser diferente da minha, e misturar gerenciadores de pacotes é tão perigoso quanto misturar bebidas, então cuidado para não tropeçar! Fique atento.

Conclusão

Dada a natureza do GNU/Linux, é certo que você terá vários tipos de problemas, mas para cada um deles algum desenvolvedor tem uma solução, e embora o Yum talvez nunca possa competir em velocidade com o apt-get, essas dicas podem ao menos levar o Yum ao pódio. Enquanto isso, vou manter o apt-get na manga em uma distro baseada no Debian.

Créditos a Gary Richmond - freesoftwaremagazine.com
Tradução por Roberto Bechtlufft <roberto at bechtranslations.com>

Características do MySQL


suporta diferentes plataformas: Win32, Linux, FreeBSD, Unix,

UPE - POLI - Engenharia Eletrônica

Programando para Web com PHP/MySQLetc...


Suporte às API´s das Seguintes linguagens: PHP, Perl,C,C++,Java, Pynthon, etc...

Suporte a múltiplos processadores


Um sofisticado sistema de senhas criptografadas flexível eSeguro.

Suporte à ODBC, você pode facilmente conectar o Access a um banco de dados do MySQL

Suporta até 16 indices por tabela

Código fonte escrito em C e C++ e testado com uma variedade de diferentes compiladores

O Cliente conecta no MySQL através de conexões TCP/IP.

Nenhum problema com o Y2K, visto que o MySQL usa o relógio do Unix que não apresentará problemas até 2069

O Banco de Dados MySQL


O MySQL é servidor de banco de dados multiusuário, multitarefa que
trabalha com uma das linguagens de manipulação de dados mais popularizadas
do mundo.


SQL é uma linguagem simples, em que você facilmente pode gravar, alterar e
recuperar informações num web site com segurança e rapidez. Ela foi
desenvolvida pelo Departamento de Pesquisas da IBM como forma de interface
para o Sistema de Banco de Dados Relacionais SYSTEM R, no início dos anos
70; em 1996, a American National Institute (ANSI) publicou um padrão SQL.
A SQL estabeleceu-se como linguagem padrão de Banco de Dados Relacional.
A linguagem SQL tem como grande virtude sua capacidade de gerenciar
índices sem a necessidade de controle individualizado de índice corrente,
algo muito comum nos Sistemas Gerenciadores de Arquivos, o Dbase por
exemplo. Nunca trabalhe com arquivos do Dbase (*.DBF)! Esses falsos bancos
de dados não oferecem integridade alguma para os dados; uma simples
recuperação de dados resulta num código complicado e extenso, visto que
consiste numa busca de registro a registro, além de não passar de uma
simples e frágil gravação sequencial de strings. Você foi avisado!


O MySQL foi originalmente desenvolvido pela empresa sueca TCX , que
necessitava de um servidor de banco de dados que operasse com grandes
escalas de dados rapidamente sem exigir caríssimas plataformas de
hardware. A TCX opera desde 1996 com 40 bancos de dados, contendo 10.000
tabelas, sendo 500 delas com mais de 10 milhões de linhas.

Instalação do PHP3


O servidor http, a ser utilizado neste curso, é o Apache, que está
disponível para download em “http://www.apache.org”. Para instalar o
servidor de web siga os passos abaixo:


6.1 - Servidor Apache 1.3.X


Execute o utilitário de instalação (apache1.3.1.exe) e siga os passos de
instalação normalmente.
Quando o programa de instalação solicitar o diretório de destino, clique o
botão browse e digite “C:\Apache” na janela PATH. Isto garantirá uma
performance considerável no acesso ao diretório htdocs (onde ficarão
armazenadas as páginas html e php reconhecidas pelo apache), visto que,
por default, o Apache será instalado em: “C:\Arquivos de Programas\Apache
Group\Apache\”.
UPE - POLI - Engenharia Eletrônica
Programando para Web com PHP/MySQL
O próximo passo é a configuração do servidor de páginas www. Começando
pelo arquivo “httpd.conf” que fica localizado em “C:\Apache\conf”, edite
este arquivo com qualquer editor de textos de escrita rápida (Edit do DOS
ou Bloco de Notas).
Adicione as seguintes linhas no final do arquivo “httpd.conf”.
ServerName localhost
ScriptAlias /php3/ "c:/php3/"
AddType application/x-httpd-php3 .php3 .php
Action application/x-httpd-php3 "/php3/php.exe"
A primeira linha informa ao apache o nome do servidor. No caso localhost
porque cada estação no decorrer do curso estará funcionando como um
servidor de web independente. A segunda linha informa ao apache que
execute scripts php. A terceira informa as extensões dos scripts php que
serão executados pelo servidor de web, ou seja, qualquer arquivo com
extensão .php3 ou php ativará o client side script. A quarta linha informa
o caminho “path” do PHP.


6.2 – Instalação do PHP3


3.1 - Crie uma pasta: “C:\php3”
3.2 - Descompacte o arquivo “php-3.0.16-win32.zip” neste diretório.
3.3 – Copie o arquivo “php3.ini.dist.txt” para o diretório “C:\Windows” ,
renomeando-o para php3.ini.
3.4 – Procure pela “linha extension_dir” no arquivo “php3.ini” e inclua o
seguinte parâmetro: “c:\php3”
Veja o trecho do arquivo abaixo como deve ficar:
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
include_path=; UNIX: "/path1:/path2" Windows: "\path1;\path2"
UPE - POLI - Engenharia Eletrônica
Programando para Web com PHP/MySQL
doc_root=; the root of the php pages, used only if nonempty
user_dir=; the directory under which php opens the script using
/~username, used only if nonempty
;upload_tmp_dir=; temporary directory for HTTP uploaded files (will use
system default if not specified)
upload_max_filesize=2097152 ; 2 Meg default limit on file uploads
extension_dir=C:\PHP3 ./
3.5 – Procure pelo trecho “Dynamic Extensions” no arquivo de configuração
do PHP3 e descomente as linhas. Obs: descomentar é só apagar o ponto e
vírgula que antece cada parâmetro de configuração.
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
; if you wish to have an extension loaded automaticly, use the
; following syntax: extension=modulename.extension
; for example, on windows,
; extension=msql.dll
; or under UNIX,
; extension=msql.so
; Note that it should be the name of the module only, no directory
information
; needs to go here. Specify the location of the extension with the
extension_dir directive above.
;Windows Extensions
extension=php3_mysql.dll
extension=php3_calendar.dll
extension=php3_dbase.dll
extension=php3_gd.dll
extension=php3_dbm.dll
Este é o parâmetro
que deve ser
adicionado!!!
Retirar o ponto e vírgula
dessas do início de cada
linha
UPE - POLI - Engenharia Eletrônica
Programando para Web com PHP/MySQL
extension=php3_mssql.dll
extension=php3_zlib.dll
extension=php3_filepro.dll
extension=php3_imap4r1.dll
extension=php3_ldap.dll
extension=php3_crypt.dll
extension=php3_msql2.dll
extension=php3_odbc.dll
Obs: Para testar se o Apache está corretamente instalado, execute o
Apache Server no menu iniciar, carregue o browser e digite o endereço:
http://localhost. Se o endereço carregar é porque o seu servidor de web
está instalado corretamente; caso contrário, repita os passos acima.riter/b

ASP x PHP


Enquanto o ASP, só é executado em plataformas micro$oft, o PHP suporta a
maioria das plataformas que proveêm acesso e serviços da internet, é
distribuído sobre GPL (Licença Pública Geral), ou seja, não se precisa
pagar para usar o PHP.

Coluna Dreamweaver - Spry Data: comandos setrow e setrownumber

Introdução

Salve Pessoal! Nesse tutorial vamos aprender a utilizar os comando setrow e setrownumber que basicamente servem para simular um iframe. Para isso vamos aprender a criar um XML Data Set ou como eu chamo um conjunto de dados. O XML Data Set e bastante semelhante com o Conjunto de Registro (recordeset) de um banco de dados, só que em vez de um banco de dados você terá um arquivo XML com todos os dados armazenados nele. Nesse tutorial vamos criar como já havia dito um XML Data Set e duas colunas, em uma coluna será mostrado os nomes dos softwares da adobe e na outra coluna as descrições dos softwares, e através do comando setrow aplicado na coluna com o nomes, conforme o usuário for clicando nos nomes a descrição será atualizando sem a necessidade de recarregar a página. Clique aqui para ver um exemplo.

Pré-requisito

Dreamweaver CS3, para baixar a versão trial clique aqui
Um arquivo XML, no exemplo vamos utilizar esse com produtos da adobe

Conceitos

O Spry é o framework da Adobe para desenvolvimento usando Ajax e está licenseado sob BSD License. O Spry foi projetado com a intenção de facilitar o desenvolvimento, ele incluir bibliotecas de código, linguagens de script e outros recursos para ajudar a desenvolver diferentes componentes de um projeto. Os comandos strow e setronumber requerem um único nome de um Data Set como seu valor, e é aplicado após definida uma Region ou Detail Region, servem para mudar ou trocar as informações de uma coluna atraves de um clique sem a necessidade de ter que recarregar a página.

Conteúdo

Crie e salve uma nova página,
pode ser em qualquer formato, não se esqueça de fazer o download do arquivos XML. Com a página aberta e salva clique na guia Spry da barra inserir do dreamweaver, e clique no botão Spry XML Data Set, uma janela se abrirá.

Configuração do Spry XML Data Set:
Data Set Name: Nome do conjunto de dados (Data Set), vamos dar o nome de dsProducts.
XML Source: Local onde está salvo o arquivo XML, clique no botão Browse para localizar o arquivo.
Botão Get schema: Botão para extrair a estrutura do arquivo XML e exibir na caixa Row element, clique nele.
Caixa Row element: Caixa para exibir a estrutura do arquivo XML, onde poderá ser selecionada as tags que serão utilizadas, em nosso exemplo vamos selecionar a tag product que esta dentro da tag principal também chamada products
XPath: exibir o caminho da tag selecionada, clique no botão Preview para visualizar os dados que estão dentro dentro da tag selecionada, em nosso exemplo deve está products/product
Data Set columns: Exibir as colunas que estão dentro da tag selecionada e qual o tipo de dados das colunas, para alterar o tipo de dados utilize a caixa Data type
Data type: Classifica os tipo de dados podendo ser, uma string, um numero, uma data o um link de imagen.
Pronto Clique no botão OK para a janela se fecha

Vamos criar duas colunas uma do lado direito onde vai aparecer os nome dos softwares da adobe e outra do lado esquerdo que vai aparecer a descrição do software que foi selecionada. No modo de visualização do código vamos criar a coluna utilizando div que vai ficar na direita (float:left) e com a largura de 200 pixel (width:200px).

<div style=”width:200px; float:left”></div>

Depois vamos criar a coluna da esquerda onde vai aparecer a descrição do software selecionado

<div style=”float:right”></div>

Coloque a página no modo de visualização do projeto, No painel Application clique na guia Bindings e veja se o Data Set dsProducts esta aberto exibindo as colunas, caso não esteja clique no sinal de mais que esta a direita do Data Set dsProducts para que seja mostrada as colunas. Clique na coluna name que esta armazenando os nomes dos software da adobe e arraste para dentro da coluna da direita

No painel Application dentro do Data Set dsProducts clique na coluna desc que esta armazenando as descrições dos softwares da adobe e arraste para a coluna da esquerda

Selecione a coluna direita e na guia Spry, na barra inserir do dreamweaver clique no botão Spry Region, para inserir uma região do Spry, e a janela de configuração do Spry Region vai se abrir.

Container: Local onde será inserido a região, escolha a opção Div ou seja a região ficará dentro da div
Type: Tipo de região, escolha a opção Region
Spry Data Set: Data Set de onde será extraído os dados, selecione o Data Set dsProducts
Ainda na coluna da direita selecione-a e na guia Spry, na barra inserir do dreamweaver clique no botão Spry Repeat, para inserir uma região de repetição do Spry, para que seja mostrado todo os nomes que estão no arquivo XML, e a janela de configuração do Spry Repeat vai se abrir.

Selecione a coluna da esquerda onde será visualizado a descrição do arquivos, e clique no botão Spry Region, para inserir uma Detail region do Spry, e a janela de configuração do Spry Region vai se abrir.

Container: Local onde será inserido a região, escolha a opção Div ou seja a região ficará dentro da div
Type: Tipo de região, escolha a opção Detail region
Spry Data Set: Data Set de onde será extraído os dados, selecione o Data Set dsProducts
Observe que os contéudos das colunas ficaram com relevo na cor verde claro. Agora mude a visualização para o modo de visualização do código, e veja se o seu código está igual ao meu:

<div style=”width:200px; float:left”>
<div spry:region=”dsProducts”>
<div spry:repeatchildren=”dsProducts”>{name}</div>
</div>
</div>
<div>
<div spry:detailregion=”dsProducts”>{desc}</div>
</div>
Vamos adiciona a função setrow na coluna com os nomes dos softwares para que quando a pessoa clique no nome apareça a descrição na coluna da esquerda que ja está configurada como uma região filho, o comando setrow pode ser adiciona dentro de diversos elementos, eu adicionei ela dentro da tag Span, então antes do nome {name} vamos criar a tag span e colocar o comando spry:setrow=”dsProducts” confome mostra as imagens abaixo:

O codigo deve ficar assim:

<div style=”width:200px; float:left”>
<div spry:region=”dsProducts”>
<div spry:repeatchildren=”dsProducts”><span spry:setrow=”dsProducts” >{name}</span></div>
</div>
</div>
<div>
<div spry:detailregion=”dsProducts”>{desc}</div>
</div>
O Arquivo está semi-pronto, faça o upload dele para o seu servidor, incluindo os arquivos pendentes do Spry e veja se ele está funcionando normal.
Observe que quando você clicar no nome do software ele não mostra o curso do mouse como se fosse um link. Para resolver esse problema vamos criar stilos CSS para personalizar a coluna, trocando o cursor do mouse e vamos utilizar mais duas funções do Spry uma é o select, que vai aplicar um estilo CSS quando o nome estiver selecionado e o outro é o comando hover, que vai aplicar um estilo quando o mouse estiver em cima. Os estilos CSS são esses abaixo:

<style type=”text/css”>
.product {
cursor: pointer;
}
.hover {
background-color: #FFFFCC;
}
.selected {
background-color: #CCCCCC;
}
</style>
Agora dentro da tag Span adicione a classe product, e as funções spry:select com o stilo selected e a função spry:hover com o estilo hover

<div style=”width:200px; float:left”>
<div spry:region=”dsProducts”>
<div spry:repeatchildren=”dsProducts”><span class=”product” spry:select=”selected” spry:hover=”hover” spry:setrow=”dsProducts” >{name}</span><br /></div>
</div>
</div>
<div>
<div spry:detailregion=”dsProducts”>{desc}</div>
</div>

Coluna Dreamweaver - Formulários com o Framework Spry

Introdução

Salve Pessoal! nesse tutorial vamos aprender a construir formulários utilizando o Framewrks Spry, garanto que é muito bom esse tutorial, fiz um formulário utilizando o spry clique aqui para ver

Pré-requisito

Dreamweaver CS3, para baixar a versão trial clique aqui

Conteúdo

Os botões para construir formulários utilizando o spry fica na guia Spry da barra inserir do dreamweaver

As opções de configuraão dos campos ficam na janela de Propriedades
Text Field

Type: Tipos de validação:
None: Nenhum tipo de validação
Intereger: Intereger
Email Address: Endereço de e-mail
Date: Datas, suporta diversos formatos de datas, para escolher selecione os tipos disponíveis na caixa Format
Time: Hora, suporta diversos formatos de datas, para escolher selecione os tipos disponíveis na caixa Format
Credit Card: Cartão de credito, suporta todos os tipos de cartão de credito, ou se preferir pode personalizar para valida somente cartão da MasterCard, Visa, American Express, Discover ou Diner´s Club,
Zip Code: Código Postal, suporta o padrão US-5, US-9, UK, Canadá, ou pode ser personalizar qualquer tipo utilizando o Pattern
Phone Number: Numero de Telefone, suporta o padrão US/Canadá ou pode ser personalizado para aceitar qualquer tipo utilizando o Pattern
Social Security Number: Número de segurança social
Currency: Moeda corrente
Real Number: Número real
IP Address: Numero de IP, suporta IPv4, IPv6 ou os dois tipos de IP
URL: URL ou Link
Custon: Personalizada
Pattern
Adiciona uma mascara que permite personalizar a validação do campo, estabelece um padrão de como o campo deve ser preenchido, disponíveis somente para os campo do tipo código postal, número telefônico e custom. Na caixa Pattern você escreve um modelo de como deve ser preenchido o campo, para campos que utilizam números utilize o numeral zero para escrever o modelo. Como por exemplo quero personalizar a caixa para exibir um número telefônico no padrão brasileiro com DDD, para isso na caixa Pattern eu escrevo 000 0000-0000, ele só vai aceita números de telefone que sigam exatamente esse modelo, ou seja, ele só vai aceitar ser o usuário digitar o número assim 011 5858-6354 ou eu posso escreve no Patern (000) 0000-0000 e marca a opção Enforce pattern, quando o usuário for digitar no formulário já pronto ele só vai precisar digitar os número em seguencia sem a necessidade de adicionar espaço, traço ou parentesês, já que conforme ele for digitando o Spry vai acrescentar os parênteses nos três primeiros números e depois dar espaço e ainda com o usuário digitando ele acrescenta o traço depois do quarto número digitado, deixando o campo exatamente como você escreveu na caixa Pattern.
Hint
Mostrar uma sugestão de como o campo deve ser preenchido, disponível em todos os tipos de campo. Ele mostrar um valor inicial e quando o usuário clicar no campo para preencher ele é apagado automaticamente.
Preview State
Visualiza como o campo vai ser comporta e qual a mensagem o usuário vai ver, podendo ser:
Initial: Inicial, como o campo será mostrado no inicio, antes do usuário preenche-lo
Requerid: Requerido, mensagem que será mostrada quando o campo for requerido e não for preenchido.
Invalid Format; Formato invalido, mensagem que será mostrada quando o campo for preenchido de forma errada.
Valid: Formato valido, mensagem que será mostrada quando o campo for preenchido de forma correta
Validade on:
Blur: O campo será validado instantaneamente ainda quando o usuário estiver preenchendo.
Change: O campo será validado somente quando o usuário tentar enviar o formulário
Opções:
Enforce Pattern: Quando o usuário preencher o campo ele vai instantaneamente convertendo os caracteres iguais ao escrito na caixa Pattern, podendo acrescentar números ou caractertes especiais conforme digitado na caixa Pattern, para que fiquei igual ao especificado no Pattern
Requeride: Requerido, campos de preenchimento obrigatório, o formulário não vai ser enviado sem o preenchimento do campo
Quantidade de caracteres
Min chars: Quantidade mínima de caracteres devem ser digitado
Max chars: Quantidade máxima de caracteres devem ser digitado
Textarea

Opções adicionais para o campo textarea
Counter
Opção para contar os caracteres que são digitados
None: Não conta os caracteres digitado
Chars Couter: Mostrar e conta os caracteres digitado
Chars remaining: Mostrar a contagem regressiva dos caracteres que restam para preencher
Block extra caracteres: bloqueia os caracteres que forem digitados além do limite informado
Checkbox
Campo Checkbox
Opções adicionais para o campo checkbox:
Requerid: Selecionamento obrigatório
Enforce range: Ativa a opção para que seja selecionada uma quantidade mínima de checkbox ou uma quantidade máxima de checkbox a ser selecionado