Foros del Web » Programando para Internet » PHP »

Usuario con rango de administrador

Estas en el tema de Usuario con rango de administrador en el foro de PHP en Foros del Web. ¿Qué tal comunidad? Pues bien, vengo planteando una duda bastante grande. Estoy tratando de hacer login para el área de administración de mi web, pero ...
  #1 (permalink)  
Antiguo 10/07/2013, 18:52
Avatar de Shikari  
Fecha de Ingreso: mayo-2012
Mensajes: 72
Antigüedad: 12 años
Puntos: 0
Usuario con rango de administrador

¿Qué tal comunidad? Pues bien, vengo planteando una duda bastante grande.

Estoy tratando de hacer login para el área de administración de mi web, pero quiero que solamente los usuarios con rango de administrador puedan entrar al panel y esto es lo que tengo:

Código PHP:
<?php require_once('../Connections/Conexion.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function 
GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
{
  if (
PHP_VERSION 6) {
    
$theValue get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  
$theValue function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch (
$theType) {
    case 
"text":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;    
    case 
"long":
    case 
"int":
      
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case 
"double":
      
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case 
"date":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;
    case 
"defined":
      
$theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue;
      break;
  }
  return 
$theValue;
}
}
?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  
session_start();
}

$loginFormAction $_SERVER['PHP_SELF'];
if (isset(
$_GET['accesscheck'])) {
  
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset(
$_POST['nick'])) {
  
$loginUsername=$_POST['nick'];
  
$password=$_POST['pw'];
  
$MM_fldUserAuthorization "usergroup";
  
$MM_redirectLoginSuccess "index.php";
  
$MM_redirectLoginFailed "login.php";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_Conexion$Conexion);
      
  
$LoginRS__query=sprintf("SELECT nick, pw, usergroup FROM users WHERE nick=%s AND pw=%s",
  
GetSQLValueString($loginUsername"text"), GetSQLValueString($password"text")); 
   
  
$LoginRS mysql_query($LoginRS__query$Conexion) or die(mysql_error());
  
$loginFoundUser mysql_num_rows($LoginRS);
  if (
$loginFoundUser) {
    
    
$loginStrGroup  mysql_result($LoginRS,0,'usergroup' == 'Administrador');
    
    if (
PHP_VERSION >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();}
    
//declare two session variables and assign them
    
$_SESSION['MM_Username'] = $loginUsername;
    
$_SESSION['MM_UserGroup'] = $loginStrGroup;          

    if (isset(
$_SESSION['PrevUrl']) && false) {
      
$MM_redirectLoginSuccess $_SESSION['PrevUrl'];    
    }
    
header("Location: " $MM_redirectLoginSuccess );
  }
  else {
    
header("Location: "$MM_redirectLoginFailed );
  }
}
?>
<?php 
require_once $_SERVER["DOCUMENT_ROOT"].'/tecpokemon/Includes/config.ini.php'?>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="ISO-8859-1">
        <title>TecPok&eacute;mon</title>
            <link href="<?php echo BASEURL;?>Public/CSS/Administracion.css" rel="stylesheet" type="text/css" />
            <link href='http://fonts.googleapis.com/css?family=Cabin+Condensed:700' rel='stylesheet' type='text/css'>
</head>

<body>

<div class="container">
    <?php include ('../Includes/Administracion/CabeceraLogin.php'?>
    <div class="content2">
        <div class="Sesion">
            <h1 style="color: #b7b6b6">Iniciar Sesión</h1>
            <form METHOD="POST" name="admin-sesion" action="<?php echo $loginFormAction?>">
                <input required type="text" name="nick" placeholder="¡Escribe tu Nick!" autofocus />
                <input required type="password" name="pw" placeholder="¡Escribe tu Contrase&ntilde;a!" />
                <input class="Boton-Registro" type="submit" value="Iniciar Sesión" />
            </form>
        </div>
    </div>
</div>
</body>
</html>
Entonces el "rango" se obtiene por medio de la entrada de "usergroup" pero no sé como se le tenga que hacer para que solamente los administradores puedan entrar.

El rango se pone dinamicamente pero me da el error.

Espero darme a entender con esto, saludos.
  #2 (permalink)  
Antiguo 11/07/2013, 02:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Usuario con rango de administrador

Pues....

Código PHP:
Ver original
  1. If ($usergroup!="administrador"){
  2.  echo "Fuera de aquí :-(";
  3. }else{
  4.  ///Aqui pones todo el HTML del panel
  5. }
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: administrador, html, mysql, rango, registro, select, sql, usuario, 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 01:23.