Les traigo la vercion actualizada del EasyLogin ( siempre me olvido de postearla xD ):
**************
NUEVA VERCION: http://www.forosdelweb.com/f18/aport...-3-0-a-736848/
**************
Código php:
Funciona casi igual al otro, las funciones se usan igual, lo que cambia el modo de ejcutacion. Ver original
<?php /********************************************************\ * EasyLogin * ********************************************************** * Autor: Pato12 de forosdelweb.com * * Version: 2.5 * * Web del autor: halfmusic.com * * Descripcion: * * Sirve para registrar, logiar, revisar si un * * usuario existe, etc... * ********************************************************** ********************************************************** * Este scriopt PHP es libre de usar siempre * * cuando no borren estas lineas y respeten la * * Licencia: GNU General Public License * * http://creativecommons.org/licenses/GPL/2.0/deed.es_AR * *********************************************************/ class EasyLogin{ 'conexion'=>false, 'tabla'=>false, 'campos'=>false, ); public function __construct($conexion=false,$tabla=false,$campos=false){ $error=false; $conexion=$this->conectarBD($conexion); if($conexion === false){ $this->setError("Conexion no valida."); $error=true; } if($tabla === false){ $this->setError("Tabla no valida."); $error=true; } $this->setError("Campos no validos."); $error=true; } $this->data['tabla']=$this->filtro($tabla); $this->data['campos']=$campos; $this->data['conexion']=$conexion; return !$error; } public function loginUser($user,$clave){ if($this->data['conexion'] === false) return $this->data['conexion']; $consulta = sprintf("SELECT * FROM %s WHERE %s='%s' AND %s='%s'",$this->data['tabla'],$this->data['campos'][0],$this->filtro($user),$this->data['campos'][1],$this->filtro($clave)); $consultar = $this->query_sql($consulta); } public function dataUser($dato,$select=false){ if($this->data['conexion'] === false) return $this->data['conexion']; $consulta = sprintf("SELECT %s FROM %s WHERE %s='%s'","*",$this->data['tabla'],!$select?$this->data['campos'][0]:$this->filtro($select),$this->filtro($dato)); $consultar = $this->query_sql($consulta); } public function existeUser($user){ if($this->data['conexion'] === false) return $this->data['conexion']; $consulta=sprintf("SELECT * FROM %s WHERE %s='%s'",$this->data['tabla'],$this->data['campos'][0],$this->filtro($user)); $consultar = $this->query_sql($consulta); } public function registrar($datos,$campos){ if($this->data['conexion'] === false) return $this->data['conexion']; $this->setError("Los campos o datos, no son array."); return $this->query_sql($consulta); } public function getError(){ return $this->data['errores']; } public function filtro($value){ } public function closedBD(){ } private function conectarBD($datos){ $conexion = mysql_connect(!$datos[0]?'localhost':$datos[0],$datos[1],$datos[2]) or $this->setError("Datos de conexion al servidor mal (".mysql_error().")."); $conexion_bd = mysql_select_db($datos[3],$conexion) or $this->setError("BD o conexion con el servidor, erronea (".mysql_error().")"); return $conexion&&$conexion_bd?$conexion:false; } private function setError($err){ $this->data['errores'][]=$err; } private function query_sql($sql){ } } ?>
Código php:
o si ya tenemos la conexion a la bd echa:Ver original
Código php:
Las funciones se cambiaron algunas de nombres.Ver original
Un ejemplo de uso:
Código php:
Bueno, espero que les sirva :PVer original
<?php include('EasyLogin 2-5.php'); $usuario = 'demo_user'; // Usuario a registrar $clave = 'demo'; // Clave del usuario if($sis->existeUser($usuario)){ // Si el usuario existe echo "No se pudo registrar, el usuario ya existe."; // Imprimimos }else{ // Si no $reg=$sis->registrar($datos,$campos); // Registramos if($reg){ // Si salio bien echo "Registrado correctamente.<br />"; // Lo decimos if($sis->loginUser($usuario,$clave)){ // Lo logeamos echo "Logeadio!"; // Si se logeo bien lo decimos }else // Si no se logeio echo "No se pudo logear"; // Lo decimos }else // Si no se registro echo "No se pudo registrar."; // Lo decimos } $sis->closedBD(); // Cerramos la conexion a la bd ?>
Yo uso este codigo en muchas webs... y me anda bien.
Gracias
Salu2
PD: Ya voy a postiar muchas class mas que hice y no postie jajja, es muy larga la documentacion ( como una class para crear mapas de google maps ) :P