Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/03/2007, 16:47
Avatar de JuanKa
JuanKa
 
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 8 meses
Puntos: 1
Recibir y grabar una matriz

Hola Muy buenas a todos.

Bueno, estoy en un lio para grabar un matriz en una tabla, les explico mejor :

Tengo 3 tablas

Tabla1
Nivel (id_niv, nombre, ......)

Tabla2
Actividad (id_act, modulo...) (Des esta tabla solo hago la consulta para tener la relacion de actividades ---> TODO BIEN CON ESTA TABLA)

Tabla3
Nivel_Actividad (id_niv, id_act) --->(Aca es el problema con la segunda variable id_act)

Tengo un formulario donde coloco los datos del Nivel como por ejemplo :
Nombre, Descripcion, etc y mas abajo hago una consulta a una tabla mediante una funcion que esta en una clase y me arroja todas las actividades que puede hacer el usuario y cada uno con su respectivo check box. es decir :
<input type="checkbox" name="chk_col[]" value="<?=$acc_act->getId()?>">

Hasta aqui todo Bien.

Incluso cuando le digo grabar solo me graba en la Tabla Nivel y la tabla Nivel_Actividad no me lo graba (Claro por que tengo el problema que no recibo la matriz chk_col[]).

Al parecer, creo que estoy recibiendo mal la matriz de chk_col[] en la clase de Nivel_Actividad

de la funcion guardar lo llamo de la siguiente manera

Código PHP:
function alta_guardar(){
    
    
$activ=getParametro("chk_col");

    try{
        
$niv_acc=new Nivel($nombre$descripcion);
        
$niv_acc->guardar(); // con esto guardo en la tabla Nivel y no tengo problemas
        
        
$acc_act= new Nivel_Actividad($niv_acc->getId(), $activ);
        
$acc_act->guardar();
            
        } 

Como puede enviar el parametro $activ como Array a la clase Nivel_Actividad
la Clase es:

Código PHP:
class Nivel_Actividad {

  protected 
$Id_niv// este parametro lo recibo bien
  
protected $Id_act// ESTE PARAMETRO ES EL QUE NO LO RECIBO BIEN
  
  
public function setId_niv($id_niv){
      
$this->id_niv $id_niv;
  }

  public function 
getId_niv(){
    return 
$this->id_niv;
  }

  public function 
setId_act($id_act){
      
$this->id_act $id_act;
      echo 
"Codigo Actividad ".$this->id_act."<BR>"//aca quiero comprobar si recibo esa matriz

  
}
  public function 
getId_act(){
    return 
$this->id_act;
  }
    
  
//CONSTRUCTOR
  
function __construct($id_niv=null$id_act=null) {
    
$this->setId_niv($id_niv);
    
$this->setId_act($id_act);
  }

Espero haberme descrito bien mi problema.

Graciasy Saludos para todos