Artigos

Erros com codificação usando SVN no FreeBSD

Posted on

Atualmente utilizo linux em meu ambiente desenvolvimento local e de testes. Ubuntu 10.04 no notebook e Ubuntu Server no servidor de teste.

Porém, quando vou publicar o projeto nos servidores de produção o sistema é FreeBSD o quase sempre o SVN me retorno o seguinte erro:

svn: Can't convert string from 'UTF-8' to native encoding:

Andei procurando algumas soluções mas quase todas para linux.

Como tive dificuldade de encontrar para FreeBSD segue agora a dica extremamente simples.

Simplesmente execute:

setenv LC_CTYPE en_US.UTF-8

E pronto! Depois basta usar svn up ou svn export normalmente

Executando comandos SQL no CakePHP

Posted on Updated on

Depois de muito pesquisar e me irritar com uma coisa que parece ser tão básica resolvi postar aqui o que eu tive dificuldades para encontrar na internet.

Eis o cenário:

Estou desenvolvendo um software com a finalidade de alimentar e ou sincronizar bancos de dados. Ele deve fazer o seguinte, quando o usuário acessar a url (http://www.site.com.br/sincronizacoes/sinc) o sistema lê vários bancos e várias tabelas, analisa algumas condições, prepara os dados e alimenta algumas tabelas de com esses dados.

Alguns adeptos do CakePHP poderiam dizer… “porque vc não usa o find()…. porque vc não usa os relacionamentos do Cake….etc…etc…”. Tudo bem! Acho até que seria possivel fazer com mais alguns dias de estudo do cake.

O problema é que não tinha esses dias e eu REALMENTE gostaria de usar as minhas queryes.

Porque?… São queryes enormes e eu já as tenho todas prontas, eu não queria reescrever tudo.

Como eu disse, é um processo simples mas acabei não encontrando uma documentação nem um relato preciso para o que eu queria. então vamos lá!

Como executar um comando SQL qualquer usando o Cake e obter o seu resultado

1)  Crie o seu controller:

class SincronizacoesController extends AppController {
 var $uses = array("Sincronizacao");
 function index(){
 }
 function sinc(){
 $this->set('vw_dados',$this->Sincronizacao->executaSinc());
 }
}

2) Crie o seu model:

class Sincronizacao extends AppModel{

 var $useTable = false;       

    # Esse é o segredo....
    # o seu model não vai usar nenhuma tabela...
    # apenas a conexão com o banco

 function index(){

 }

 public function executaSinc(){
     return($this->query("Execute aqui qualquer comando SQL que desejar"));
 }
}

Por fim, crie o view normalmente e trate os dados nele

<h1>Ufa!</h1>
<b>
 <?php pr($vw_dados); ?>
</b>

Pronto!… muito simples… mas se alguém não explicar fica complicado de se adivinhar. 😉

Até a próxima

Usabilidade – Parte 1

Posted on

Slides sobre Usabilidade na Web de Autoria de Roberto Romani.
Read the rest of this entry »

Redes de Computador – Parte 1

Posted on

Slides de Redes de Computador – Parte 1
Read the rest of this entry »

Librivox! Narrações opensource de livros, textos e poemas.

Posted on

Às vezes a internet parece estar sem vida, sem nada que me emocione mas derepente me deparo com algum serviço, site ou projeto que me faz pensar melhor sobre a internet. É o caso do projeto www.librivox.org.

Pode ser usado por estudantes de língua, cegos e até como mais uma diversão na net.

Como o próprio site define:

“LibriVox é uma esperança, uma experiência e uma pergunta: pode a Internet unir um grupo de voluntários para ajudar a dar vida a livros no domínio público através de podcast?

E acho que a resposta é sim!

Ainda não existem muitos textos ou livros em português, a maioria está em inglês, mas já é um bom começo.

Todos os textos narrados devem ser de domínio público e todas as narrações do Librivox são doadas ao domínio público. Isso acaba limitando bastante as obras disponíveis mas, paciência não é! Existem grandes obras nacionais que estão em domínio público.

Imagine você, durante uma viagem, ao invés de ouvir música, andar por aí ouvindo um bom livro! Você baixa e coloca tudo em um mp3 player! Perfeito! Tem-se um bom livro durante a viajem sem ter o desconforto que é ler em papel que tudo chacoalhando pra lá e pra cá.

Dê uma conferida em uma obras em português.