Si tenes razon, me salto el primero.
1- Podes usar un do while si queres.
2- Cambia el constructor de la clase material y si usa un metodo add y ahi tienes la solucion.
Código PHP:
Ver originalpublic function add
( $datos = array() ) {
/* esto cambialo por los campos que tengas, no incluyas el id*/
if(isset($datos['campo_1']) {
this->campo_1 = $datos['campo_1'];
}
if(isset($datos['campo_2']) {
this->campo_2 = $datos['campo_2'];
}
/* aca hacer el insert a mysql y obtener el ID del material insertado
para asignarselo a $this->id*/
}
public function __construct($id_material = -1){
/* Si hay que leer que lo lea sino no hacer nada */
if( $id_material > 0 )
{
$sql= "
SELECT
*
FROM material
WHERE id = ".$id_material."
";
$this->query = $sql;
$t_material = $this->AssocList();
foreach($t_material as $k => $v){
$this->id = $t_material[$k]['id'];
$this->nombre = $t_material[$k]['nombre'];
$this->referencia = $t_material[$k]['referencia'];
$this->peso = $t_material[$k]['peso'];
$this->tamano = $t_material[$k]['tamano'];
}
}
}
Espero sirva, saludos.