Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/02/2015, 08:39
martinpandolfelli
 
Fecha de Ingreso: julio-2013
Mensajes: 31
Antigüedad: 10 años, 10 meses
Puntos: 0
al hacer ajax apuntando a un controlador me pisa las variables globales

Hola!! a ver si me pueden ayudar con esto
Tengo esta libreria:

Código:
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');


class cartas{
	function __construct()
	{
		$this->ci =& get_instance();
		$this->ci->load->library('session');
        $this->ci->load->library('tank_auth');
		$this->ci->load->library('jugador');
		$this->ci->load->database();
	}

    var $jugadores = array();

	public function barajar ($partida_id){
        $this->ci->db->select('*');
        $this->ci->db->from('cartas');
        $this->ci->db->order_by('id','RANDOM');
        $this->ci->db->limit(6);
        $cartas  = $this->ci->db->get()->result();
        
        $c = 0; 
        foreach ($cartas as $carta) {                 
            if($c <= 2){                                                                
                $jugadores[JUGADOR_1][$partida_id][$carta->id] = $carta;
                //seteo el status de cada carta a 0
                $jugadores[JUGADOR_1][$partida_id][$carta->id]->status = 0;

            } 
            if($c > 2){
                $jugadores[JUGADOR_2][$partida_id][$carta->id] =  $carta;  
                //seteo el status de cada carta a 0       
                $jugadores[JUGADOR_2][$partida_id][$carta->id]->status = 0;

            } 

            $c++;
         }

        return $jugadores; 
    }

    public function getCartas(){
        global $jugadores;
        return $jugadores;
    }
    	
}
y esta funcion en un controlador:
Código:
function traerCartas(){
$data['cartas'] = $this->cartas->getCartas();
    	$this->load->view('juego/mis-cartas', $data);
    }
y por ultimo en mi vista tengo
Código:
<script type="text/javascript">
  $(document).ready(function(){      
      $(".mis-cartas").load('<?=base_url();?>index.php/dashboard/traerCartas');         
  });

</script>
Basicamente lo que necesito hacer es cargar en el div .mis-cartas por ajax lo que me devuelva el controlador, que a su vez se comunica con la liberira.

Todo funcion correctamente, el tema es que al parecer cuando hace el load vuelve ac cargar el controlador y pisa la variable $jugadores, retornando null.