Ver Mensaje Individual
  #5 (permalink)  
Antiguo 12/08/2006, 11:53
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Hola, tu codigo esta, "bien", pero tienes unos pequeños errores, a continuacion te los pongo:

- Siempre define de que tipo son las funciones, inclusive los constructores, se que por compatibilidad si declaras una funcion sin su atributo de acceso es public por default, pero es bueno que definas si el constructor es publico o privado.

- Trata de que tus variables de clase siempre sean privadas, esto es para prevenir que se cambien sin que tu lo hagas exclusivamente, se que esto no es un problema en PHP, pero cuando programes en otros lenguajes (como Java, .NET) donde hay clases sincronizadas, te sera mas facil programar de igual forma.

Para esto crea lo que se les conoce Getters y Setters, esto es, metodos como: getNombre(), getStatus(), y setNombre( $nombre ), setStatus( $status).

Se que esto "complica" un poco las cosas pero es bueno cuando a veces hay que programar en otros lenguajes POO, como Java y .NET.

- En tus funciones no uses 2 returns, ya que la funcion siempre se sale con el primer return que encuentra, esto es un error de programacion que estas haciendo aunque para el compilador no es problema.

A continuacion te pego tu codigo ya arreglado
Código PHP:
require_once'class.Conexion.php'// Esta clase de la conexion con la BD usando PEAR 

class Actividad 
{
    private 
$nombre
    private 
$status;
         
    public function 
__construct() 
    {
        
$nombre null;
        
$status null
    }
    
    private function 
conectar() 
    { 
        
$connect = new Conexion(); 
        
$this->connected $connect->conexion(); 
        
        return 
$this->connected
    }
    
    public function 
Agregar() 
    { 
        
$db $this->conectar(); 
        
$insertar "insert into actividades set nombre='".$this->nombre."', status='".$this->status."'"
        
$db->query($insertar);
    }
    
    public function 
Buscar$id 
    { 
        
$db $this->conectar(); 
        
$consulta "select * from actividades where idActividad=".$id;
        
$res $db->query($consulta); 
        
$row $res->fetchRow(DB_FETCHMODE_OBJECT); 
        
$this->nombre $row->nombre
        
$this->status $row->status
        
        return 
true// Aqui regresamos true para indicar una busqueda exitosa
    
}
    
    public function 
getNombre()
    {
        return 
$this->nombre;
    }
    
    public function 
getStatus()
    {
        return 
$this->status;
    }
    
    public function 
setNombre$nombre )
    {
        
$this->nombre $nombre;
    }
    
    public function 
setStatus$status )
    {
        
$this->status $status;
    }