Português do Brasil English
Devin no Facebook  Devin no Twitter  RSS do Site 
Programação    

php-gettext: Múltiplos idiomas em um sistema PHP


Comentários  16
Visualizações  
566.007

O php-gettext é uma biblioteca em PHP que emula as funcionalidades do gettext, que por sua vez é uma poderosa biblioteca para suporte de múltiplos idiomas em qualquer sistema (inclusive o sistema operacional). O gettext é utilizado pela maioria dos programas GNU e do Linux e por isso é o preferido da galera também em muitos sistemas PHP.

No PHP, existem duas formas de usar os métodos gettext: uma extensão nativa e uma biblioteca separada. Neste tutorial, vamos aprender a usar a biblioteca separada. A extensão nativa do PHP é rápida e bem suportada pelo PHP, mas ela é uma extensão nativa! Isso quer dizer que o PHP precisa ter essa extensão compilada como módulo e habilitada nas configurações. Por experiência própria, esse tipo de dependência gera dificuldades na hora de instalar sistemas em, por exemplo, servidores de hostings compartilhados e distribuições Linux que não tem os pacotes já prontos. Enquanto isso, o php-gettext é totalmente auto-suficiente: é só colocar uns arquivos php no sistema, carregá-los via include/require e pronto, já está funcionando. Apesar da biblioteca ser um pouquinho (só um pouquinho) mais lenta que a extensão nativa, vale muito à pena pela praticidade.

Leia mais

Programação    

Infinite Scroll do WordPress e PollDaddy


Comentários  0
Visualizações  
517.400

Um dos recursos que tem aparecido bastante em sites e portais é o Infinite Scroll. Como o nome já diz, esse recurso faz com que as paginações de um site carreguem automaticamente quando o usuário desce até o final da página, lá embaixo de todas as notícias ou posts. Um dos exemplos mais conhecidos é o próprio Facebook, que em seu Feed de notícias vai carregando infinitamente os posts à medida que o usuário vai descendo a página. O objetivo é que o usuário não tenha que clicar e esperar outra página carregar para ver mais conteúdo… Convenhamos que é um ótimo recurso de usabilidade :)

Toda vez que um usuário vai até o final da página, o plugin reconhece e manda uma requisição AJAX pedindo a próxima página. Quando o navegador a recebe, o plugin monta automaticamente via JS e seletores CSS a parte dos posts no lugar correto, implementando assim o recurso de scroll infinito. Mas alguns plugins como o Polldaddy ratings e ShareThis não funcionam de primeira, pois fazem chamadas javascript… Mas há como resolver isso!

Leia mais

Programação    

Utilizando Proxy no WordPress e PHP


Comentários  4
Visualizações  
48.671

Todo mundo conhece o tal Proxy. Quer queira quer não, na maioria das vezes as empresas utilizam um proxy como intermediador entre seus usuários e a Internet em geral. Enquanto o firewall bloqueia todo o acesso externo, deixa apenas essa brecha para os clientes conectarem no Proxy, então este controla tudo o que entra e sai pela Web.

Esse controle do Proxy geralmente tem como objetivo não deixar as pessoas usar sites indevidos. Em algumas empresas, isto é verdade também para os servidores. Forçando os servidores a sair pra internet apenas por um proxy, os administradores tem um controle e logs do que os servidores fazem, podem mensurar e ainda colocam uma camada de segurança a mais, onde possíveis códigos maliciosos nas aplicações web não consigam sair para a internet.

É possível configurar o WordPress (e PHP puro também) para utilizar um proxy sem precisar fazer muito esforço.

Leia mais

Programas    

Gerenciando MySQL com o phpMyAdmin: Usuários


Comentários  36
Visualizações  
279.266

Uma vez instalado o phpMyAdmin, como descrito em um artigo anterior, é hora de aprender a mexer no programa como um todo. Por ser uma ferramenta bastante completa, este tutorial vai satisfazer dois nichos: os que não sabem nada de MySQL e vão aprender a mexê-lo com o phpMyAdmin; e os que já sabem MySQL e vão aprender a usar a ferramenta.

Leia mais

Programação    

PHP: Protegendo arquivos de funções


Comentários  0
Visualizações  
14.853

Quando se cria um arquivo de classes ou funções, sabe-se que eles não serão usados sozinhos, e sim chamados por outros scripts através do include() ou do require(). Para certificar-se que o usuário não chamará estes arquivos sozinhos através de uma URL, teste pela variável $PHP_SELF, que se retornar com o nome do arquivo do próprio arquivo de funções ou classes, barra o usuário. Caso ele esteja sendo incluído de outro arquivo, o $PHP_SELF refletirá este outro arquivo.

Leia mais

Programação    

PHP: Resumindo o tamanho do texto


Comentários  3
Visualizações  
58.582

Às vezes precisamos colocar certos dados em uma tabela HTML por exemplo, como nome, descrição, e esse tipo de coisa, mostrando uma certa listagem das coisa, ou até o começo de uma notícia com um link para o texto completo. Quando o texto é muito grande, a formatação pode ficar compremetida, então usa-se a função substr(), que reduz a string a um certo tamanho que você queira. Digamos que haja um texto enorme de 30 linhas, e você quer colocar em uma tabela de resumo, que ao clickar ele apresenta os detalhes do texto. O bom seria que tivesse uma “mostra” do texto antes de clicá-lo, na tabela. Usaria-se: subsr($texto,0,30); Isso retornaria apenas os 30 primeiros caracteres do texto.

Leia mais

Programação    

PHP: Traduções usando printf()


Comentários  0
Visualizações  
15.599

Uma boa maneira de produzir uma aplicação que terá várias versões em línguas diferentes é usando a função printf(). Nela a frase inteira será sempre as mesma, e as variáveis serão referenciadas (como por exemplo, %s para uma string). Assim você pode traduzir as frases inteiras sem se preocupar em “quebrar” as frases por causa das variáveis.

Leia mais

Programação    

PHP: Tratamento de Erros


Comentários  2
Visualizações  
20.746

Se o PHP estiver com a opção do php.ini “track_errors” ligada, um erro de script é armazenado na variável $php_errormsg. Pode-se suprir estas mensagens de erro colocando uma arroba (@) antes da função, expressão, etc. Utilizando os dois, pode-se esconder o erro e depois mostrar de uma forma mais amigável.

Leia mais