Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoa,
Estou criando uma aplicaçãozinha porem sou novo no zend e estou tendo algumas dificuldades.
Tenho que recuperar um dado de uma db e comparar com um valor para dar procedência ao código, eis que faço no meu model..
class Application_Model_Convidados extends Zend_Db_Table
{
protected $_name = 'dados';
protected $_primary = 'id';
public function confere(){
$sql = $this->select();
$sql->from($this->_name,array('presente'))
->where("numero=?",$numero);
return $this->fetchRow($sql);
}
}
Agora gostaria de saber como eu recupero no meu controller o valor 'presente' para comparar com um valor qualquer para eu dar procedência ao código..
Estou fazendo assim no meu controller porém não quer dar certo..
$convidado = new Application_Model_Convidados();
$numero = $this->getRequest()->getPost('numberfild');
$presente = $convidado->confere($numero);
Obrigado.
Rapaz, deu certinho, vlws msm..
Tenho só dúvidas quanto a essa linha:
return ( bool ) $this->fetchRow ( $sql )->presente;
Para que serve o bool? e o ( $sql )->presente; é por causa do campo do meu banco de dados?
>
Tenho só dúvidas quanto a essa linha:
return ( bool ) $this->fetchRow ( $sql )->presente;
Para que serve o bool?
Fazendo o cast para booleano. Não é necessário, já que o PHP faz a tipagem de forma dinâmica (faria dentro do if), mas entendo que assim fica mais correto (inclusive para a documentação da classe e do método).
>
... e o ( $sql )->presente; é por causa do campo do meu banco de dados?
Exatamente. É o nome da coluna que foi retornada do banco de dados.
Carlos Eduardo
Uhn... Para não misturarmos camada e segundo o que eu entendi, você precisa modificar algumas coisas... Apenas para confirmar, você quer saber se alguém está presente em alguma situação. Se sim, você vai fazer alguma coisa. Se não, você vai fazer outra coisa. Certo?
Imaginando que seja isto, seu controller ficaria assim:
if($convidado->estaPresente($numero)) { // faz alguma coisa } else { // faz outra coisa }No seu model fica a regra do negócio. Algo assim:
class Application_Model_Convidados extends Zend_Db_Table
{
/**
* Verifica se está presente
* @param int $numero
Para fazer isto, estou assumindo algumas coisas:
Qualquer coisa que continuar com dúvida ou que não tiver entendido, só perguntar.
Carlos Eduardo