Foros del Web » Programando para Internet » PHP »

PHP OO Problema instanciando clases

Estas en el tema de Problema instanciando clases en el foro de PHP en Foros del Web. Buen día para todos, Soy nuevo en esto de la POO, Intentare ser lo mas explicito posible ya que muchas veces no responden porque no ...
  #1 (permalink)  
Antiguo 20/11/2010, 09:18
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 17 años, 6 meses
Puntos: 394
Pregunta Problema instanciando clases

Buen día para todos,

Soy nuevo en esto de la POO, Intentare ser lo mas explicito posible ya que muchas veces no responden porque no se dan datos suficientes para solucionar el problema.

Tengo tres paginas PHP

La primera se llama TratamientoRegistro.php que se encarga de realizar un tratamiento a unos datos que vienen de un formulario.

La segunda se llama ClsConexiones.php que es una clase que se encarga de realizar la conexión a la base de datos con diferentes usuarios dependiendo si es INSERT SELECT o MODIFY

La tercera se llama ClsCrudTblAcceso.php que es una clase que se encarga de realizar el INSERT SELECT o MODIFY en una tabla

Bueno hasta acá creo que he sido explicito. Lo que intento hacer es instanciar las dos clases que se encuentran en las ultimas dos paginas dentro de la primera para que se me haga el INSER. Pero lo único que consigo es un error de MySql

Aquí el código de las paginas PHP

TratamientoRegistro.php
Código PHP:

<?php 
include("../include/ClsConexiones.php");
include(
"../include/ClsCrudTblAcceso.php"); 
?>
<?php
$acc_correo 
$_POST['f_acc_correo'];
$acc_seudonimo $_POST['f_acc_seudonimo'];
$acc_contrasena $_POST['f_acc_contrasena'];
$id_roll $_POST['f_id_roll'];

// instanciamos la clase que conecta a la base de datos
$clase_insersion = new conexiones ();
$clase_insersion -> con_insersion ();

// instanciamos la clase que inserta los datos en la base de datos
$clase_insersion = new clsTblAcceso ();
$clase_insersion -> insertar ();
?>
ClsConexiones.php
Código PHP:

<?php
/* por seguridad quite el resto de usuarios y funciones que realizan otras cosas 
en la BD y deje solo la funcion que realiza el INSERT */

class conexiones 
{
    private 
$servidor "UnServidor";
    private 
$basededatos "BaseDatos";
    
// usuario para realizar insersiones a la base de datos
    
private $usuario_insersiones "*******";
    private 
$contrasena_insersiones "******";
    
// Esta funcion se encarga de realizar conexion a la base de datos con el usuario y contraseña de insercion nada mas
public function con_insersion ()
    {
        global 
$conexion;
        
$conexion mysql_connect($this->servidor$this->usuario_insersiones$this->contrasena_insersiones);
        
mysql_select_db($this->basededatos$conexion);    
    }

}

?>
ClsCrudTblAcceso.php
Código PHP:

<?php
class clsTblAcceso
{
    public 
$acc_correo;
    public 
$acc_seudonimo;
    public 
$acc_contrasena;
    public 
$id_roll;
    private 
$acc_confirmado 0;
    private 
$acc_estado 1;
    private 
$acc_estado_correo 1;
        
public function 
insertar ()
    {
        
$insertar "INSERT INTO tbl_acceso (campo1, campo2, ...) VALUES ($campo1, campo2, ...)";
        
mysql_query($this->insertar$conexion);

    }
}
?>
tengo una pagina donde realice una prueba con ClsConexiones.php y si me funciona muy bien... este es el codigo:

Código PHP:

<?php include ("include/ClsConexiones.php"); ?>
<? 
$clase_conexion 
= new conexiones ();
$clase_conexion -> con_consulta();

// ahora la consulta
$instruccion = ("SELECT * FROM tbl_tipo_perfil");
$ejecutar_instruccion mysql_query($instruccion$conexion);
$total_registros mysql_num_rows($ejecutar_instruccion);

//  mostrar los resultados
if ($total_registros 0) {
    while(
$resultado mysql_fetch_assoc($ejecutar_instruccion)) {
        echo 
$resultado['id_tipo_perfil']."-";
        echo 
$resultado['tp_codigo']."-";
        echo 
$resultado['tp_nombre']."-";
        echo 
$resultado['tp_estado']."<br/>";
    }
}
?>
Muchisimas gracias a todos por leer este tema, y un feliz dia para todos.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???

Etiquetas: clases, crud, instancia
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 18:35.