Compactar arquivos com PHP


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (3 votos, média: 3.67 de 5)
Loading ... Loading ...

Olá pessoal, hoje vou mostrar como fazer para compactar arquivo com PHP. O procedimento é muito simples, caso seu servidor esteja com o zlib habilitada basta executar um código mais ou menos assim:

  1. < ?
  2. /**
  3.  * Insere um arquivo dentro de um zip.
  4.  *
  5.  * @param String $name_of_zip Nome do arquivo ZIP que será trabalhado.
  6.  * @param String $path_file Path original do arquivo que vai para o ZIP
  7.  * @param String $file_name Nome do arquivo dentro do ZIP
  8.  * @return Mixed
  9.  */
  10. function fileToZip($name_of_zip=null, $path_file=null, $file_name=null){
  11.     if(empty ($name_of_zip) || empty ($path_file) || empty ($file_name)){
  12.         return ‘Todos os parâmetros são obrigatórios’;
  13.     }
  14.  
  15.     // Cria a instancia do ZIP
  16.     $zip = new ZipArchive;
  17.     // se conseguir criar o arquivo ZIP
  18.     if( $zip->open($name_of_zip, ZIPARCHIVE::CREATE) === true ){
  19.         // Adiciona o arquivo dentro do zip
  20.         $zip->addFile($path_file, $file_name);
  21.         $zip->close(); // fecha a conexão com o ZIP
  22.         // Opcionalmente pode-se excluir o arquivo original, basta inserir uma variável nos parâmetros
  23.         //unlink(‘/path/do/arquivo/arquivo.php’);
  24.         return true;
  25.     } else {
  26.         return false;
  27.     }
  28. }
  29. ?>

Leia o resto desta entrada »

[Rapidinha] PHP – Não escreva arquivos ‘.inc’


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (2 votos, média: 5.00 de 5)
Loading ... Loading ...

Caso o Apache do seu servidor não estiver configurado corretamente ele faz com que arquivos .inc sejam exibidos na tela. Logo, todo o conteúdo do arquivo fica exposto no browser.

Digamos que você tem um arquivo no qual seta as configurações do seu sistema, como: Host do banco de dados, usuário e senha.
Salvou com o nome de config.inc.
Ao acessar este arquivo diretamente pela URL veja o que acontece:

config.inc sendo exibido no Firefox Leia o resto desta entrada »

2º Encontro do PHP MG


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (4 votos, média: 5.00 de 5)
Loading ... Loading ...

Oá pessoal tudo bom?

Hoje estou postando a apresentação da palestra que ministrei no 2º Encontro do PHP MG dia 17/10/2009.

Como migrar seu ambiente de desenvolvimento para Linux.

Leia o resto desta entrada »

Cuidado com os parâmetros passados pela URL


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (2 votos, média: 5.00 de 5)
Loading ... Loading ...

Tudo bom pessoal?

Hoje vou falar algo muito simples mas que faz muita diferença em um sistema(web): Parâmetros passados pela URL.

Recentemente recebi acesso full por sete dias à um site de ensino de inglês(prefiro não falar qual é o site). Com o acesso full, os usuários podem fazer downloads dos ‘podcasts’ das aulas… que são arquivos MP3 onde são apresentadas situações cotidianas(em inglês), mas, tudo muito bem explicado pelo professor.
Mas, os downloads tem um limite: 14 downloads por mês.

Fui fazer um download, e para minha surpresa, o meu ID do banco de dados é passado via GET pela URL. Então pensei: Vou testar a segurança do site!

Adivinhem o que aconteceu?

Sim! se vc respondeu que a validação para saber se ja baixei 14 arquivos é feita por este parâmetro você acertou em cheio!!!

Então lembre-se sempre: NUNCA PASSE PARÂMETROS IMPORTANTES PELA URL.

OBS: Alterando o meu ID na URL para 1, eu poderia baixar todos os arquvos do site(mp3, pdf das aulas…). Pois pensei: normalmente, o primeiro usuário do banco de dados é do dono do site ou do usuário administrador.

Espero ter ajudado!

Usando get_ini() para recuperar informações do PHP.INI


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (2 votos, média: 5.00 de 5)
Loading ... Loading ...

E aí pessoal!

Hoje vou dar uma dica interessante e muito simples(as vezes dicas simples ajudam a resolver grandes problemas)… é como obter as configurações do PHP.INI no seu código.

Mas para que isto é importante?
Bom, em determinadas situações, você precisa saber se determinada configuração esta ativa. Vamos para um caso prático então.

Recentemente tive que fazer um ‘check-list’ para rodar um sistema. Este ‘check-list’ fazia algumas checagens no PHP.INI para saber se estava tudo correto, uma checagem que ele fazia era ver o “uplaod_max_filesize”. Caso ele fosse menor que 20M eu iria emitir um alerta para que isto fosse alterado.
Leia o resto desta entrada »

Get Adobe Flash playerPlugin by wpburn.com wordpress themes