Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Ayuda con clase

Estas en el tema de Ayuda con clase en el foro de Frameworks y PHP orientado a objetos en Foros del Web. hola amigos quisiera saber si la clase que hice esta bien porque vi varios metodos que usan y son muy distintos al que use aca(usan ...
  #1 (permalink)  
Antiguo 20/03/2010, 15:43
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Ayuda con clase

hola amigos quisiera saber si la clase que hice esta bien porque vi varios metodos que usan y son muy distintos al que use aca(usan %s en vez de lo que yo use q es $this->nombre)

Código PHP:
include('../ProcesosPHP/conexion.php');

class 
Area {
    private 
$codigo;    // Codigo de area
    
private $nombre;    // Nombre de Area

    
public function __construct($cod$nomb) {
        
$this->codigo $cod;
        
$this->nombre $nomb;
    }
    public function 
Crear() {
             
$query sprintf("INSERT INTO tnca_area (`AREA_NOMB`) VALUES ('$this->nombre')");
            
mysql_query($query);
    }
    public function 
Modificar() {
            
$query sprintf("UPDATE tnca_area
                               SET   `AREA_NOMB` = '$this->nombre'
                               WHERE `AREA_CODI` = $this->codigo"
);
            
mysql_query($query);
    }
    public function 
Eliminar() {
            
$query sprintf("DELETE FROM tnca_area WHERE AREA_CODI IN($this->codigo)");
            
mysql_query($query);
    }

y como podria hacer para por ejemplo jalar los datos de un textbox e insertarlo
actualmente lo estoy haciendo asi para crear

$area = new Area(null,"recepcionz");
$area -> Crear();
  #2 (permalink)  
Antiguo 20/03/2010, 16:19
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Ayuda con clase

sprintf("INSERT INTO tnca_area (`AREA_NOMB`) VALUES ('%s')",$this->nombre);

sprintf sustituye la secuencia de %s por los datos pasados como parametros depues del patron (que seria el primer parámetro):

string sprintf ( string $format [, mixed $args [, mixed $... ]] )
  #3 (permalink)  
Antiguo 20/03/2010, 16:36
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Ayuda con clase

y como podria hacer lo que pregunte arriba

tengo un formultario, una vez q lo lleno esos datos se iran a la bd

como jalo esos datos para pasarlo a la bd

normalmente lo hago con $_POST['name'] y eso lo pongo en la consulta, pero ahora con PHP OO como se podra hacer ?

porque tengo q pasarlo por $area = new Area('valor'); verdad ?
  #4 (permalink)  
Antiguo 20/03/2010, 16:37
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Ayuda con clase

Sí y no.

Al crear el objeto $area = Area();, debes pasarle el $_POST['name'];

De esta forma :

Código PHP:
$area Area($_POST['codigo'], $_POST['name']); 
Son 2 parámetros, ya que así lo declaraste en el constructor. Nos vemos.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #5 (permalink)  
Antiguo 20/03/2010, 16:53
 
Fecha de Ingreso: marzo-2009
Mensajes: 356
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: Ayuda con clase

lo hice asi pero no me funciona haber te digo como lo tengo estructurado

en la raiz estan todas las paginas por ejmplo index.php, nuevaarea.php .....; tengo una carpeta que se llama Clases y dentro de esa esta Area.php

en nuevaarea.php puse

$area = Area($_POST['codigo'], $_POST['name']);
$area -> Crear();

y lo redireccione a la misma pagina. pero no crea nada, se tiene q importar la clase area ??

gracias por todo
  #6 (permalink)  
Antiguo 21/03/2010, 07:40
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Ayuda con clase

Sí, la clase debe ser incluida (include) o requerida (require), pero veo que pasaste por alto el comentario de maycolalvarez, que tiene bastante relevancia, ya que la función sprintf no la estás usando como deberías.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #7 (permalink)  
Antiguo 21/03/2010, 13:33
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Tema movido desde PHP a PHP orientado a objetos
  #8 (permalink)  
Antiguo 22/03/2010, 05:46
Avatar de enriqueplace  
Fecha de Ingreso: mayo-2005
Ubicación: Uruguay / Argentina
Mensajes: 1.102
Antigüedad: 19 años
Puntos: 32
Respuesta: Ayuda con clase

Estimado Dante,

Revisa estándares de codificación como el de Zend Framework. Por lo pronto, es un estándar de facto, los métodos deben iniciar en minúsculas.

Saludos!
__________________
Blog phpsenior.com Cursos a Distancia surforce.com

Etiquetas: clase
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:19.