HUFERSIL.WEBDEVELOPER - Soluções com qualidade - Hugo Ferreira da Silva

  • Lumine - Respondendo dúvidas - Transações Qua, 07 de maio de 2008 - as 10h55 - 1 comentários

    Segue um e-mail que recebi a respeito de transações no Lumine:

    Bom dia Hugo,

    tdo bem? Como funciona o controle de transação do Lumine?
    tentei Lumine::begin() mas não funciona...fala que não existe o método!

    Você tem que recuperar a conexão e nela chamar o begin.

    // A conexão pode ser recuperada de duas formas:
    
    // - Pelo objeto de configuração gerado com Lumine_Configuration:
    $conexao = $config->getConnection();
    
    // - Pela entidade que se está trabalhando:
    $conexao = $entidade->_getConnection();
    
    // Depois de recuperar a conexão, basta iniciar a transação....
    $conexao->begin();
    
    // .... dar um rollback ...
    $conexao->rollback();
    
    // ... ou dar um commit ....
    $conexao->commit();
    


    @braços e fiquem com Deus!

  • Lumine - Tutorial 4 - Trabalhando com a clausula WHERE Sex, 25 de abril de 2008 - as 23h44 - Nenhum comentário

    Lumine oferece uma forma bem legal e fácil de trabalhar com a clausula WHERE de suas pesquisas.
    É no estilo de prepared statement, porém sem precisar de efetuar uma segunda chamada para vincular o valor ao elemento (bind).

    Neste tutorial veremos as duas formas de efetuar isso:
    • Através de itens numerados;
    • Nomes para vinculação.
    Antes de prosseguir, temos que lembrar o que é necessário para que o método se comporte da maneira como o esperado.
  • Correção no Lumine - 2 bancos de dados ou mais Qui, 24 de abril de 2008 - as 16h02 - Nenhum comentário

    Hoje, após problema enviado por um usuário (André), fui fazer alguns testes usando dois bancos de dados diferentes com MySQL. Foi notado que quando se fazia a conexão com o primeiro, depois o segundo e tentava-se retornar ao primeiro, dava erro de SQL. O lance é que toda vez que for fazer uma consulta, terei que usar o mysql_select_db.

    Mesmo informando a conexão na chamada ao método mysql_query (o que já era feito há muito tempo), ele não estava pegando corretamente o banco.

    Você pode baixar acessando a seção de downloads.

    @braços e fique com Deus!
  • Lumine - um pouco mais inteligente Qua, 09 de abril de 2008 - as 16h14 - 1 comentários

    Há alguns dias atrás, recebi um e-mail contendo o seguinte:

    Boa tarde, Hugo.
    Como fiz algumas correções no driver do sybase para auto increment, estou te encaminhando. Estou com um problema ainda, queria tirar uma dúvida com voce, se puder.
    Quero fazer uma atualização em uma tabela com campo auto-increment. No Sybase, ele não permite que eu altere um campo desses explicitamente, só que quando o comando $tabela->save(), ele está gerando o comando de update com o meu campo auto-increment, ocasionando um erro.
    Não sei se é meu driver, ou se é alguma configuração do lumine que eu teria de configurar.


    Este problema já havia sido reportado antes, porém eu não tinha tido tempo de resolvê-lo.

    Agora, Lumine só efetuará o update do campo se o valor do campo for alterado, do contrário o campo não será incluído na lista de atualização. Caso todos os campos não sofram alterações, Lumine não executará o update.

    @braços e fiquem com Deus!
  • Lumine - ativando e exibindo o Log Ter, 08 de abril de 2008 - as 16h10 - Nenhum comentário

    Hoje recebi um e-mail do Cairo Noleto, perguntando o seguinte:
    "Como funciona o log na nova versão?"

    Agora, a classe a ser utilizada é a Lumine_Log (só acrescentei o underline para facilitar a visualização, como nas outras classes).

    Você poderá definir o nível do log e também a saída do mesmo:
    Dentro da classe Lumine_Log, existem as constantes de níveis e saídas.

    As contantes de níveis de log:
    • NONE: desabilita o log;
    • DEBUG: envia o log de debug normal;
    • WARNING: envia o log de alertas (como falta de algum item da configuração)
    • ERROR: envia todos os anteriores, incluindo erros de SQL devida má formação das uniões, data-select's etc.
    As constantes de saídas são:
    • BROWSER: envia o resultado do log para o navegador.
    • FILE: envia o resultado do log para um arquivo.
    Exemplo de uso:
    Lumine_Log::setLevel( Lumine_Log::ERROR ); // nivel máximo
    Lumine_Log::setOutput( Lumine_Log::FILE, '/var/www/log.txt' ); // envia para um arquivo

    $user = new Usuario;
    $user->find();

    // agora, exibe no navegador
    Lumine_Log::setOutput( Lumine_Log::BROWSER );
    $user->reset();
    $user->order('nome asc')->find();

    @braços e fiquem com Deus!

Páginas: 1 | 2 | 3 | 4 | 5 | 6 | 7

Arquivo

Tags