Muy buenas a tod@s!
Os pongo está consulta para ver si me podéis echar una mano. 
Soy nuevo en codeigniter. Hace muy poco que lo estoy usando y me he planteado un proyecto que incluye un carrito de compra. Pero estoy teniendo un problema. 
Por ahora tengo dos productos para hacer pruebas. 
Cuando los introduzco no hay ningún problema. Y si los actualizo no lo hay tampoco... la primera vez. Es decir, puedo poner un producto o los dos. Pero después de que haga una actualización, me si quiero volver a actualizar me falla. 
La cantidad de advertencias que me da el navegador, es mayor cuanto más alta es la cantidad que quiero incrementar el producto.  
 
 
Mis códigos son los siguientes: 
modelo de la cesta o el carro (carro.php): 
 Código PHP:
    <?php
    Class Carro_model extends CI_Model
    {
        public function agregar_al_carro($id)
        {    
            $pagina = 'carro';
            
            $this->load->model('usuarios_model');
            $this->load->model('productos_model');
 
            $producto = array(
                            'id'      => $this->input->post('id'),
                            'qty'     => 1,
                            'price'   => $this->input->post('precio'),
                            'name'    => $this->input->post('nombre'),
                            'options' => array('description' => $this->input->post('nombre'))
                        );
            
            $data['carro'] = $this->cart->insert($producto);    
        }
        
        public function vaciar_carro()
        {
            $this->cart->destroy();
        }
        
        public function actualizar_carro()
        {
            // Obtenemos el número total de items en el carro  
            $total = $this->cart->total_items();  
          
            // Seleccionamos la información que necesitamos  
            $item = $this->input->post('rowid');  
            $qty = $this->input->post('qty');  
          
            // Hacemos un loop para acutalizarla  
            for($i = 0; $i < $total; $i++)
            {  
                // Creamos un array de productos con sus rowid y cantidades.  
                $data = array(   
                      'rowid' => $item[$i],
                      'qty' => $qty[$i]
                   );  
          
                // Actualizamos el carro con la nueva información.  
                $this->cart->update($data);  
            }
        }
    }    
  Controlador del carro (carro.php) 
 Código PHP:
    <?php 
    if ( ! defined('BASEPATH')) exit('No direct script access allowed');
    
    session_start(); //we need to call PHP's session object to access it through CI
 
    class Carro extends CI_Controller
    {
 
          function __construct()
          {
            parent::__construct();
          }
 
          function index()
          {    
            $pagina = 'carro';
            
            $this->load->model('usuarios_model');
            $this->load->model('productos_model');
            $this->load->model('carro_model');
            
            $session_data = $this->session->userdata('logged_in');
            
            $data['productos'] = $this->productos_model->obtener_productos();
            $data['username'] = $session_data['username'];
        
            if ( ! file_exists('application/views/publico/' . $pagina . '.php'))
             {
                   // Oh-oh... no tenemos una pagina para esto!
                   show_404();
             }
 
            // Capitaliza la primera letra
             $data['titulo'] = ucfirst($pagina);
         
            $this->load->view('plantillas/publico_cabecera', $data);
             $this->load->view('publico/' . $pagina, $data);            
        }
        
        public function agregar_al_carro($id)
        {    
            $pagina = 'carro';
            
            $this->load->model('usuarios_model');
            $this->load->model('productos_model');
            $this->load->model('carro_model');
 
            $this->carro_model->agregar_al_carro($id);     
            
            redirect('carro', 'refresh');
        }
        
        public function vaciar_carro()
        {
            $this->load->model('carro_model');
 
            $this->carro_model->vaciar_carro();
            
            redirect('inicio', 'refresh');
        }
        
        public function actualizar_carro()
        {
            $this->load->model('usuarios_model');
            $this->load->model('productos_model');
            $this->load->model('carro_model');
            
            $this->carro_model->actualizar_carro();
            
            // Volvemos al carro
            redirect('carro', 'refresh');
        }
    }    
  Vista (carro.php): 
 Código PHP:
    <?php if(!$this->cart->contents()):
    echo 'Todavía no has añadido ningún producto.';
else:
?>
 
<?php echo form_open('carro/actualizar_carro'); ?>
<table width="100%" cellpadding="0" cellspacing="0">
    <thead>
        <tr>
            <td>Cantidad</td>
            <td>Descripción</td>
            <td>Precio</td>
            <td>Sub-Total</td>
        </tr>
    </thead>
    <tbody>
        <?php $i = 1; ?>
        <?php foreach($this->cart->contents() as $items): ?>
        
        <?php echo form_hidden('rowid[]', $items['rowid']); ?>
        <tr <?php if($i&1){ echo 'class="alt"'; }?>>
              <td>
                  <?php echo form_input(array('name' => 'qty[]', 'value' => $items['qty'], 'maxlength' => '3', 'size' => '5')); ?>
              </td>
              
              <td><?php echo $items['name']; ?></td>
              
              <td>€<?php echo $this->cart->format_number($items['price']); ?></td>
              <td>€<?php echo $this->cart->format_number($items['subtotal']); ?></td>
          </tr>
          
          <?php $i++; ?>
        <?php endforeach; ?>
        
        <tr>
            <td</td>
              <td></td>
              <td><strong>Total</strong></td>
              <td>€<?php echo $this->cart->format_number($this->cart->total()); ?></td>
        </tr>
    </tbody>
</table>
 
<p><?php echo form_submit('', 'Actuarlizar Carro'); echo anchor('carro/vaciar_carro', 'Vaciar Carro', 'class="empty"');?></p>
<p><small>Si la cantidad introducida en un producto es 0, el item será borrado.</small></p>
<?php 
echo form_close(); 
endif;
?>    
  Bueno, creo que esa es toda la información que puedo daros.
Si os hiciese falta alguna cosa más, pedídmelo. Vale?? 
Muchas gracias! 
Un saludo, 
         SeiyaJapon.