Como Listar Categorias De Uma Tabela Produtos

Qual seria a melhor forma para listar as categorias de um produto a partir de uma base de dados.

A base de dados exemplo está no anexo.

obrigada.5327

BD.png

podes usar relacoes

no teu modelo dos produtos podes fazer algo parecido com isto:





/**

	 * @return array relational rules.

	 */

	public function relations()

	{

		return array(


			'categorias'  => array( self::HAS_MANY, 'Categorias', 'id_categoria' ),


		);

	}




neste caso… quando seleccionares o teu produto, e kiseres as categorias, só terias ke fazer algo parecido com:





$oCriteria = new CDbCriteria;

$oCriteria->condition = 't.idProduto=:produtoId'

$oCriteria->params = array( ':produtoId' => $productoId );

$oCriteria->with( array('categorias')); // pedir a relacao com categorias

$oProduto = Produto::model()->find( $oCriteria );


foreach( $oProduto->categorias as $categoria )

{

    echo $categoria->nome_cat;

}




Podes dar uma olhada a este link para mais informacao:

http://www.yiiframework.com/doc/guide/1.1/pt/database.arr

algo parecido com isto… espero ke ajude

Obrigada pela ajuda…

Pedro Luz eu tentei implementar o codigo exemplo mas não funcionou, é que eu queria que as categorias dos produtos aparecesse na pagina home da aplicação e da um erro…

Se puder ajudar é que sou iniciante ainda não percebo muita coisa do framework…

obrigada