Pessoal, pretendo listar todos os materiais depois de escolher o serviço. A minha query:
$qry='
select Id, Nome
from materiais mt
where not exists
(Select null
MaterialId
from materiais_servicos ms
where ms.MaterialId = mt.Id and ms.ServicoId='.'"'.$_POST['ServicoId'].'")';
$result = Yii::app()->db->createCommand($qry)->queryAll();
Nao venho pedir ajuda sobre esta query. O que pretendo é preencher a segunda dropdowlist com o resultado desta query.
Tenho a primeira Dropdownlist para escolher o "Servico" e a segunda Dropdownlist irá conter todos os materiais do resultado da query.
Como é que faço para passar o valor do ServicoId para a query e dessa forma preencher a segunda Dropdownlist? Do genero, "onChange o Servico" atualiza a segunda DropdownList (Materiais).
O Objetivo é atualizar o $data como o resultado da query. Se assim nao for ira listar todos os materiais e nao quero isso, so quero que mostre os materiais que ainda nao foram inseridos na tabela materiais_servicos para determinado serviço.
Olha to sem tempo agora para escrever os códigos, mas resolveria fazer assim:
1 - Criar no controller uma action que faz a query baseada no resultado, ela faz a query e da um renderpartial de uma view que pega a query e cria um dropdownlist.
2 - Na view que tem os dropdownlist crie um javascript que pegue o valor do primeiro dropdownlist e mande por ajax para a action criada no item 1. E também se acontecer o evento sucess ele atualizar uma div.
3 - No DropDownList 2 você coloca dentro de uma div que será atualizada pelo script ajax que chamou.