Foros del Web » Programando para Internet » PHP »

Restriccion Base de Datos

Estas en el tema de Restriccion Base de Datos en el foro de PHP en Foros del Web. Hola que tal, no se que hacer tengo una base de datos llamada clientes la tabla se llama registro tengo una columna llamada tipousuario lo ...
  #1 (permalink)  
Antiguo 26/04/2011, 04:56
 
Fecha de Ingreso: abril-2011
Ubicación: Baja California sur
Mensajes: 39
Antigüedad: 13 años
Puntos: 0
Mensaje Restriccion Base de Datos

Hola que tal, no se que hacer tengo una base de datos llamada clientes la tabla se llama registro tengo una columna llamada tipousuario lo que quisiera es hacer un bloqueo a los clientes que tengan en tipousuario el valor de 1 y los que tengan valor 2 puedan entrar, espero pudiesen ayudarme, fueron muchos dolores de cabeza y no puedo

No se si me explico pero no logro hacerlo.
  #2 (permalink)  
Antiguo 26/04/2011, 05:17
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años
Puntos: 3
Respuesta: Restriccion Base de Datos

creo que lo más sencillo es que utilices un Where en la consulta SQL:

Código:
public function login($usuario, $pass) { 
	
		$query = "SELECT usuario,password FROM registro WHERE usuario ='$usuario' AND password = '$pass' AND tipousuario='2';"; 

		$consulta = new Consulta($query);
		
		if( $consulta->num_filas() == 0 ){
		    	throw new Exception("Login y/o Password incorrecto");
		} else {
			$this->registrarUsuarioActual($usuario);
			setcookie("usuarioId", $usuario['$usuario'], time()+60*60*24*31,"/","",0);
		}

	   return true; 
	}
Espero que te sea de ayuda!
  #3 (permalink)  
Antiguo 26/04/2011, 05:34
 
Fecha de Ingreso: abril-2011
Ubicación: Baja California sur
Mensajes: 39
Antigüedad: 13 años
Puntos: 0
Respuesta: Restriccion Base de Datos

Muchisimas gracias de verdad, No se si este bien lo que hice pero como logueo con el correo..

Cita:
<?php require_once('../../Connections/basededatos.php');
?>

<?php

if (!isset($_SESSION)) {
session_start();
}

$mallogin = "miembros.php";
$nombre = $_SESSION['MM_Username'] ;
$pass = $_SESSION['MM_UserGroup'] ;

$query = "SELECT correo,pass FROM registro WHERE correo ='$nombre' AND pass = '$pass' AND tipousuario='2';";

$consulta = $query;

if( $consulta->num_filas() == 0 ){
header("Location: ". $mallogin );
}
else {
$this->registrarUsuarioActual($nombre);
setcookie("id", $nombre['$nombre'], time()+60*60*24*31,"/","",0);
}

return true;

?>

Última edición por djmkmix; 26/04/2011 a las 05:59
  #4 (permalink)  
Antiguo 26/04/2011, 06:54
Avatar de ESNOLA  
Fecha de Ingreso: octubre-2006
Mensajes: 188
Antigüedad: 17 años, 6 meses
Puntos: 20
Respuesta: Restriccion Base de Datos

Si la variable $nombre es la que indica la direccion de email si que está bien pero se pude deducir que no visto el código de arriba, por lógica sería:
Cita:
<?php require_once('../../Connections/basededatos.php');
?>

<?php

if (!isset($_SESSION)) {
session_start();
}

$mallogin = "miembros.php";
$nombre= $_SESSION['MM_Username'] ;
$email= $_SESSION['MM_UserEmail'] ;
$pass = $_SESSION['MM_UserGroup'] ;

$query = "SELECT nombre, correo,pass FROM registro WHERE correo ='$email'
AND nombre= '$nombre'
AND pass = '$pass' AND tipousuario='2';";

$consulta = $query;

if( $consulta->num_filas() == 0 ){
header("Location: ". $mallogin );
}
else {
$this->registrarUsuarioActual($nombre);
setcookie("id", $nombre, time()+60*60*24*31,"/","",0);
}

return true;

?>
Creo que eso te valdría, prueba a ver.
En negrita lo que he cambiado/añadido.
  #5 (permalink)  
Antiguo 27/04/2011, 02:05
 
Fecha de Ingreso: abril-2011
Mensajes: 103
Antigüedad: 13 años
Puntos: 3
Respuesta: Restriccion Base de Datos

faltaría saber la función RegistrarUsuarioActual:

Código:
	public final function registrarUsuarioActual($usuario_modelo){
		$_SESSION['usuario_actual'] = $usuario_modelo;
	}

Etiquetas: restriccion, bases-de-datos
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 23:58.