Foros del Web » Programando para Internet » PHP »

login!!!

Estas en el tema de login!!! en el foro de PHP en Foros del Web. estimad@s, tengo un problemita!!! resulta que tengo esta clase, la primera que veo, la saque de un foro y la estoy tratando de usar con ...
  #1 (permalink)  
Antiguo 19/04/2013, 14:01
 
Fecha de Ingreso: junio-2012
Ubicación: Santiago de Chile
Mensajes: 164
Antigüedad: 11 años, 10 meses
Puntos: 1
login!!!

estimad@s, tengo un problemita!!!

resulta que tengo esta clase, la primera que veo, la saque de un foro y la estoy tratando de usar con mysql para despues usar mysqli, porque no se mucho de objetos, prefiero ir a paso lento...


conectar.php (clase conectar)

Código PHP:
Ver original
  1. <?
  2.  
  3. class conectarMySQL {    
  4.    
  5.    
  6.     //function consultas a la bd
  7.     public function consultar($query) {
  8.         //aquí se realizan las consultas a la base de datos
  9.         $this->consulta=mysql_query($query,$this->enlace);
  10.     }
  11.    
  12.     //obtener resultados de la consulta
  13.     public function obtendatos() {
  14.         //aquí se obtienen los datos de la consulta
  15.         $this->resultado=mysql_fetch_array($this->consulta);        
  16.         return $this->resultado;        
  17.     }
  18.     public function numero_filas(){
  19.         $this->fila=mysql_fetch_row($this->consulta);        
  20.         return $this->fila;
  21.     }
  22.  
  23. }

recorté lo demás, porque todo funciona bien...

ahora tengo un formulario de loggeo que envía datos a loggeo.php y este es su codigo

Código HTML:
Ver original
  1. <?
  2. require("class/conectar.php");
  3. $obj  = new conectarMySQL();
  4.    $obj->conectar();
  5.     $obj->consultar("SELECT * FROM usuarios WHERE email='".$_POST['mail']."' AND password='".$_POST['password']."'");
  6.         $data=$obj->obtendatos();
  7.         $rows=$obj->numero_filas();              
  8.             if ($rows==""){
  9.             $userID=$data['ID'];
  10.             $mail=$data['mail'];
  11.             session_start();
  12.             $_SESSION['numuser']=$userID;
  13.             $_SESSION['mailuser']=$mail;
  14.             header("Location:principal.php");
  15.             } else {
  16.                 $error=1;
  17.                 header("Location:index.php?var=".$error);    
  18.             }

he intentado imprimir las variables $data y $row
resultados al imprmir son $data = "" y $rows=0

no entiendo bien, tendré problemas con las funciones??

alguien que me ayude porfa, es mi primera incursión tratando de orientarme al objeto...gracias
  #2 (permalink)  
Antiguo 19/04/2013, 15:09
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: login!!!

Hola que tal.

Si ese es todo el código de tu clase esta mal, nunca haces la conexión a la base de datos, tienes errores graves de estructuración de clases.

te dejo este ejemplo, no la probé pero debe de funcionar

Código PHP:

<?php
 
class conectarMySQL{
    
    public 
$servidor 'tu_servidor';
    public 
$usuario 'tu_usuario';
    public 
$contrasena 'tu_contrasena';
    public 
$baseDeDatos 'tu_db';
    public 
$enlace;


    public function 
__construc()
    {
       
    }

    public function 
conectar()
    {

        
$this->enlace mysql_connect $this->servidor$this->usuario$this->contrasena  ) or die ( mysql_error() );
        
mysql_select_db(  $this->baseDeDatos$this->enlace ) or die ( mysql_error() );
    }

    
//function consultas a la bd
    
public function consultar($query) {
        
//aquí se realizan las consultas a la base de datos
        
$this->consulta mysql_query($query,$this->enlace);
    }
    
    
//obtener resultados de la consulta
    
public function obtendatos() {
        
//aquí se obtienen los datos de la consulta
        
$this->resultado mysql_fetch_array($this->consulta);        
        return 
$this->resultado;        
    }
    public function 
numero_filas(){
        
$this->fila mysql_fetch_row($this->consulta);        
        return 
$this->fila;
    }
  
}
También te recomiendo que leas http://php.net/manual/es/language.oop5.php para que fortalezcas tus conocimientos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125

Etiquetas: formulario, mysql, resultados, select, sql, usuarios, variables
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 20:06.