Foros del Web » Programando para Internet » PHP »

diferenciar administrador de usuario????

Estas en el tema de diferenciar administrador de usuario???? en el foro de PHP en Foros del Web. Hola a todos pues la verdad estoy aprendiendo apenas php y estoy en un problema seguro encontraran mucho errores en el codigo pero bueno lo ...
  #1 (permalink)  
Antiguo 21/04/2008, 22:57
 
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 4 meses
Puntos: 0
diferenciar administrador de usuario????

Hola a todos pues la verdad estoy aprendiendo apenas php y estoy en un problema seguro encontraran mucho errores en el codigo pero bueno lo q quiero hacer es que este code q hice me haga diferencia entre un usuario normal y un administrador.

bueno hice un campo en la base de datos llamado tipo donde si tipo es = 1 es admin y si es igual a 2 es usuario comun el problema es q al comprobar que no es tipo 1 `pasa al elseif y no me reconoce al usuario al contrario me marca datos incorrectos al parecer se brinca hasta el else les juro llevo dias intentando de mil formas q aun q ilogicas me llenaban de esperanza jaja asi q como vi q no pude pues me decidi a preguntarle a alguien que si sepa un poco mas.

de ante mano gracias y espero por fin lograr esto ya q es lo unico q me falta para poder continuar.

Código PHP:
<?php
session_start
(); 
include(
"conexion.php");
$link=Conectarse();


 
$consultamysql_query("select * from usuario where usuario='$_REQUEST[usuario]' and clave='$_REQUEST[clave]' and tipo='1'");

             if(
$arreglo=mysql_fetch_array($consulta)){
             
$bann=1;
             
              
$_SESSION['usuario']=$arreglo['usuario'];
             
              
header ("Location: admin.php"); 
                           
                }
                elseif(
$bann!=1){
                
              
$_SESSION['usuario']=$arreglo['usuario'];
             
              
header ("Location: usuario.php");
               }
              
              else{
?>
              
                  <SCRIPT LANGUAGE="Javascript">
                     alert('Datos Incorrectos, Seras Redirigido Para Intentarlo De Nuevo')
                   </script>
              
                   <script>
                window.location.href='index.php';
                </script>
         
             
               <?php              
              
}
               
?>
  #2 (permalink)  
Antiguo 21/04/2008, 23:46
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: diferenciar administrador de usuario????

Descarta el tipo='1' por que si vas a hacer una comparación no la debes hacer exacta. ejemplo

si juanito me dice la verdad que sea verdad ? no es lógico debería ser si juanito me dice la verdad y después verifico si juanito dijo o no dijo la verdad. por eso debes quitar el TIPO='1' del sql de otro modo el ELSE quedaría descartado y pudieras usar solo un else if () para verificar si se cumplió la condición o no.
Código PHP:



<?php
session_start
(); 
include(
'conexion.php');

 
$link Conectarse();

 
$sql "SELECT * FROM usuario
         WHERE usuario='"
.$_POST['usuario']."' 
         AND clave='"
.$_POST['clave']."'  ";
         
 
$consultamysql_query($sql) or die("ERROR -"mysql_errno());
 
$arreglo mysql_fetch_array($consulta) or die("ERROR -".mysql_errno());
 
 if(
$arreglo['tipo'] == 1) {
 
   
$_SESSION['usuario'] = $arreglo['usuario'];
   
header('Location: admin.php');
   
// Administrador
   
   
}
   
     else {
     
      
$_SESSION['usuario'] = $arreglo['usuario'];
      
header('Location: usuario.php');
      
// Usuario Comun
      
      
}


?>
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.

Última edición por eddwinpaz; 22/04/2008 a las 00:03
  #3 (permalink)  
Antiguo 22/04/2008, 11:35
 
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: diferenciar administrador de usuario????

exacto eso era lo q necesitaba de verdad muchas gracias es q no sabia q condicion poner
if($arreglo['tipo'] == 1) me salvaste gracias de nuevo, solo una cosa la parte del else final
es un pequeño scrip q queria q saliera en caso de que los datos fueran incorrectos, xq lo q sale
ahora es un mensaje muy seco, ese de error 0 q muestra el php, y si me gustaria q al equivocarse el usuario
le saltara este script

Última edición por asheva7; 22/04/2008 a las 11:52
  #4 (permalink)  
Antiguo 09/09/2008, 13:12
 
Fecha de Ingreso: febrero-2008
Mensajes: 8
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: diferenciar administrador de usuario????

a mi no me sirveeee

if(($_POST['txtUsuario'] == "s") && ($_POST['txtPass']=="s"))
{
$algo=1;
}
$sql="select * from `usuario` where nick='".$_POST["txtUsuario"]."' AND psw='".$_POST['txtPass'] ."'";

$result=mysql_query($sql,$link);
$datos=mysql_fetch_array($result);
echo $datos["Tipo"];
if(($result)==1 || $algo==1)
{

if(($datos['Tipo']=='Administrador') || ($algo==1))
{
die ("<script>document.location='index-3B.php';</script>"); /// Administrador
}
else
{
echo "<script>window.location='Donde.html';</script>"; ///// Usuario
}
$algo=0; //
}
else
{
echo "<script> alert('Login incorrecto'); </script>";
}
}




SIEMPRE ME ENVIA LOGIN INCORRECTO..IMPRIMO EL CONTENIDO DEL ARREGLO $DATOS Y ME SALE ADMINISTRADOR O USUARIO DEPENDIENDO DE LOS DATOS Q META.. Y NO ME SIRVE EL IF :s AYUDA PLXX
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 08:23.