Conforme visto no artigo sobre o funcionamento de sessões no PHP, o sistema de arquivamento em disco é inseguro. Este artigo implementa uma classe que armazena os dados em banco de dados MySQL. Isto além de possibilitar uma maior segurança dos dados de sessão, permite que uma aplicação seja portada para um sistema de balanceamento de cargas muito mais facilmente, pois independentemente de qual servidor a requisição for processada, terá acesso as variáveis de sessão de forma transparente.
O PHP possui um sistema interno de gerenciamento de sessões muito prático, porém inseguro, tanto que existe uma referência no manual do PHP chamado Sessões e segurança com dicas para aumentar a segurança das variáveis de sessão. Para entender o porque desta insegurança, vamos compreender como o sistema funciona.
Existem diversos sites famosos com serviços que adicionam um frame superior (contendo propaganda, links, etc…) e a sua página abaixo, no espaço restante.
Também pode acontecer de um site malicioso que acesse as informações de sua página através de javascript, fazendo com que um script escondido em um frame de 0 pixels acesse o conteúdo de [...]
Algum tempo atrás eu utilizei um script para adicionar funções de forma dinâmica em uma página. Isto é muito útil em páginas que utilizam AJAX para o processamento e desejam carregar as funções sob demanda ou até mesmo proteger o código apenas para usuários autenticados no sistema, fazendo um script que forneça o código apenas [...]
Esses dias encontrei por acaso uma postagem sobre optmização de MySQL e as publico aqui por ter gostado da simplicidade e eficiencia.
Pesquisa por palavra exata
Muito rápido:
SELECT * FROM TABELA WHERE MATCH (‘campo’) AGAINST (‘Palavra’)
Rápido:
SELECT * FROM TABELA WHERE MATCH (‘campo’) AGAINST (‘+Palavra’ IN BOOLEAN MODE)
Lento:
SELECT * FROM TABELA WHERE campo RLIKE ‘(^| +)Palavra($| +)’
Lento:
SELECT * [...]