Autor Tema: solo kiero que lo vean los administradores  (Leído 1066 veces)

Desconectado exaplepro

  • PHPer@
  • **
  • Mensajes: 78
  • Karma: 0
    • Ver Perfil
solo kiero que lo vean los administradores
« en: 30 de Agosto de 2010, 21:33:16 pm »
Buen día, soy Exaple hoy les traigo un "mini-tutorial" para hacer que "algo" en su web lo vean únicamente los administradores.

Bueno, comencemos, primero, digamos que yo tengo un sistema de usuarios, y en ella están los campos

id,username,password,rank

primero hacemos el código, luego explicare paso a paso;

Citar
<?php
session_start();
include("nucleo.php");
$usuarios = mysql_query("SELECT * FROM usuarios WHERE username='".$_SESSION["username"]."'");
$rango_u = mysql_fetch_array($usuarios);
/* Ahora crearemos el IF */
if($_SESSION["username"]){
if($rango_u["rank"] == "Administrador"){
// Contenido de la p&#225;gina de administraci&#243;n.
}else{ echo 'Debes ser administrador para ver este siti&#243; de la p&#225;gina web.'; }
}else{ echo 'Inicia sesi&#243;n para ver est&#225; secci&#243;n web.'; }
?>


Ahora si explico mejor, con el "include" llamaremos al archivo que conectará a nuestra base de datos, si no tienes uno es muy sencillo, les dejo un código:

Citar
<?php
$conexion = mysql_connect("localhost"/*Servicio de bases de datos*/, "sergiopina"/*Usuario de la base de datos*/, "habbalways1"/*Contrase&#241;a de la base de datos*/) or die(mysql_error());
mysql_select_db("base de datos"/*Base de datos*/, $conexion);
?>

con el mysql_query hacemos un llamado a la tabla usuarios, y llamamos al usuario sergiopina o simplemente al de la sesión iniciada.

con el mysql_fetch_array hacemos respuesta al llamado para imprimir y hacer consultas acerca del "query"

con el
if(isset($_SESSION["username"]))
comprobamos que el usuario inició sesión.

con el
if($rango_u["rank"] == "Administrador")
comprobamos que el usuario llamado en la base de datos tiene rango Administrador

Bueno, el tutorial fue echo en poco tiempo, algo que agregar, que falte o desees preguntar postealo.

Fuente:http://foro.habbalways.com/

Tutorial by:sergiopina
« Última modificación: 31 de Agosto de 2010, 18:42:57 pm por exaplepro »
ExapleDesings: www.FaseHack.es ¡Proccimamente!

Comunidad PHPeros

solo kiero que lo vean los administradores
« en: 30 de Agosto de 2010, 21:33:16 pm »

Desconectado seyder120

  • PHPero Avanzado
  • ****
  • Mensajes: 372
  • Karma: -2
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #1 en: 31 de Agosto de 2010, 13:09:22 pm »
gracias por el post....

Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #2 en: 31 de Agosto de 2010, 13:58:42 pm »

Para empezar, el código está mal.

#Fdo. Physlet

Desconectado Klum

  • PHPer@ Fijo
  • ***
  • Mensajes: 203
  • Karma: 61
  • Sexo: Masculino
  • Progamador & Diseñador
    • Ver Perfil
    • Chat - KlumShader
Re:solo kiero que lo vean los administradores
« Respuesta #3 en: 31 de Agosto de 2010, 17:51:06 pm »
Para empezar, el código está mal.
Creia que SergioPina... nunca tenia ningún error...



Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #4 en: 31 de Agosto de 2010, 18:10:16 pm »

El error está en que no estabiliza session_start() por lo tanto las variables globales de sesion ($_SESSION['aaa']) están desabilitadas.

#Fdo. Physlet

Desconectado Klum

  • PHPer@ Fijo
  • ***
  • Mensajes: 203
  • Karma: 61
  • Sexo: Masculino
  • Progamador & Diseñador
    • Ver Perfil
    • Chat - KlumShader
Re:solo kiero que lo vean los administradores
« Respuesta #5 en: 31 de Agosto de 2010, 18:12:19 pm »
El error está en que no estabiliza session_start() por lo tanto las variables globales de sesion ($_SESSION['aaa']) están desabilitadas.
¿Eso no lo usa en el "username"?



Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #6 en: 31 de Agosto de 2010, 18:15:36 pm »

El codigo bien sería de la siguiente forma. Lo voy a mejorar y voy a marcar en negrita lo que falta o sobra o he arreglado.:

Citar
<?php
session_start();
include("nucleo.php");
$usuarios = mysql_query("SELECT * FROM usuarios WHERE username='".$_SESSION["username"]."'");
$rango_u = mysql_fetch_array($usuarios);
/* Ahora crearemos el IF */
if($_SESSION["username"]){
if($rango_u["rank"] == "Administrador"){
// Contenido de la p&#225;gina de administraci&#243;n.
}else{ echo 'Debes ser administrador para ver este siti&#243; de la p&#225;gina web.'; }
}else{ echo 'Inicia sesi&#243;n para ver est&#225; secci&#243;n web.'; }
?>

#Fdo. Physlet

Desconectado Klum

  • PHPer@ Fijo
  • ***
  • Mensajes: 203
  • Karma: 61
  • Sexo: Masculino
  • Progamador & Diseñador
    • Ver Perfil
    • Chat - KlumShader
Re:solo kiero que lo vean los administradores
« Respuesta #7 en: 31 de Agosto de 2010, 18:19:05 pm »
Karma, gracias por arreglarlo Siquillote.



Desconectado exaplepro

  • PHPer@
  • **
  • Mensajes: 78
  • Karma: 0
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #8 en: 31 de Agosto de 2010, 19:44:56 pm »
El codigo bien sería de la siguiente forma. Lo voy a mejorar y voy a marcar en negrita lo que falta o sobra o he arreglado.:

ya modifique el codigo!!

gracias por avisar
ExapleDesings: www.FaseHack.es ¡Proccimamente!

Desconectado x.mara.x

  • PHPero Master
  • ******
  • Mensajes: 1.364
  • Karma: 57
  • Sexo: Femenino
    • Ver Perfil
Re:solo kiero que lo vean los administradores
« Respuesta #9 en: 02 de Octubre de 2010, 19:28:37 pm »
Depende, puede q estes incluyendo el archivo en un archivo q tenga el session_start, en ese caso no, no esta mal.