Salvando registro de uma sessao

Ahe galera preciso de uam ajuda, o problema é o seguinte quando o usuario envia a lista que esta na sessao o yii so esta salvando o ultimo registro do array eu nao sei o que esta acontecendo, e ele nao retorna erro, como vc pode ver no codigo abaixo eu salvo o pedido e depois o item do pedido, so que no array esta certo e quando vai salvar ele so grava um o utltimo registro array…

Esta certo fazer assim, gravar e ja pegar o id do registro relacionado?

O que sera que estou errando ou o uqe esta acontecendo.

Na tabela de itens pedido tem idpedido, idproduto, qtde(idpedido e idproduto é chaves) e estão relacionadas.


 public function actionEnviarlista(){

            session_start();           

            if(isset($_SESSION['usuario']['iduser'])){

                $model = new Pedido;

                $itens = new Itemspedido;

                $model->idrepresentante = $_SESSION['usuario']['iduser'];

                $model->data_cadastro = date("Y-m-d H:i:s");

                $model->save();

                foreach($_SESSION['pedido'] as $id => $qtde):

                     $itens->idpedido = $model->id;

                     $itens->idproduto =  $id;

                     $itens->quantidade = $qtde;

                     $itens->save();                  

                endforeach;

                $this->redirect('/pedidos');

            }else{

                Yii::app()->user->setFlash('loginerro','<img src="/images/stop.png" width="16" height="16" alt="Erro"/>  Para enviar a lista de Pedido você precisar logar!');

                $this->redirect('/pedidos');

            }

         }

Oi Edson,

Voce já tentou instanciar $itens dentro do foreach() ?

Já tentou fazer um output da $_SESSION[‘pedido’] só pra checar se ela tem todos os valores que devem ser gravados?

Isso mesmo instancie dentro for e deu certo.

valew