Foros del Web » Programando para Internet » PHP »

Login usuario multinivel

Estas en el tema de Login usuario multinivel en el foro de PHP en Foros del Web. Hola estoy intentando hacer un login de usuario para mi pagina web, y tengo varios fallos. index.php Código HTML: <?php //---------------------mostramos barra de la derecha ...
  #1 (permalink)  
Antiguo 18/08/2011, 05:11
 
Fecha de Ingreso: julio-2011
Mensajes: 25
Antigüedad: 12 años, 8 meses
Puntos: 1
Login usuario multinivel

Hola estoy intentando hacer un login de usuario para mi pagina web, y tengo varios fallos.

index.php
Código HTML:
<?php
//---------------------mostramos barra de la derecha cerrar session
if (isset($_SESSION['inici_sessio']))//si Hay Session que muestre botn cerrar seesion
{
echo '<form  action="cerrar_session.php" method="post" name="f1">
<input name="cerrar_session" type="submit" value="Salir"> 
</form>';
//---------------------FIIII mostramos barra de la derecha cerrar session
?>

<?php
}else{// que muestre entrar usuario!
?>
<form action="p2.php" method="post" name="f1">
		<table><tr><td>Usuario:<input name="usuario" type="text" style="width:130px;"></td></tr>
		<tr><td>Contraseña:<input name="contra" type="password" style="width:130px;"></td></tr>
		 <tr><td><input name="inciar" type="submit" value="Iniciar Sesion"></td></tr>   
		</table>
</form>
<form action="inserir.php" method="post" name="f1">
<input name="registro" type="submit" value="Registrarse"> 
</form>
<?php
}
?> 


p2.php
Código PHP:
<?php
//******************************CONEXION A BASE DE DATOS*************************************************** 
$conexionmysql_connect("localhost","root",""); 
//******************************SELECCION DE BASE DE DATOS************************************************* 
mysql_select_db("repsertrade",$conexion); 
$contra $_POST['contra'];
$usuario $_POST['usuario'];
//------------------------INCIAR SESSION!!!!!!!---------------------
if (isset($_POST['inciar']))
{
$_SESSION['nom_usuario'] = $_POST["login"];
    if (!empty(
$usuario) && !empty($contra) )
    {
            
$sql2 "select * from usuarios where login = '$usuario' and password = '$contra'";
            
$consulta22 mysql_query($sql2);
            
$num_rows2 mysql_num_rows($consulta22);
                if (
$num_rows2>0)
                {
                
$_SESSION['inici_sessio'] = 1;
                    while (
$rows1=mysql_fetch_assoc($consulta22)){
                    if (
$rows1['rol']==2){
                    echo 
"HOLa";    
                                            
header ("Location: http://eoul.hostei.com");
                    }else{
                            echo 
"Bienvenido ".$usuario;
                            
$_SESSION['inici']=$rows1['id'];
                            
$_SESSION['nom_usuari']=$rows1['usuario'];
                            
header ("Location: tipo_usuario.php?rol=1");//cap al index si no hi ha usuario registrat!
                    
}
                    }
                }else
                {
                echo 
"El Usuario ".$usuario." No existe <br>";
                }
    }else{
    echo 
"Rellena todos los campos";
    }
}
//-----------FI DE INICI SESSION--------
?>


tipo_usuario.php

Código PHP:
<?php
//---------------------mostramos barra de la derecha cerrar session
if (isset($_SESSION['inici_sessio']))//si Hay Session que muestre botn cerrar seesion
{
echo 
'<form  action="cerrar_session.php" method="post" name="f1">
<input name="cerrar_session" type="submit" value="Salir"> 
</form>'
;
//---------------------FIIII mostramos barra de la derecha cerrar session
?>

<?php
}else{// que muestre entrar usuario!
?>
<?php
echo '
<form action="index.php" method="post" name="f1">
        <table><tr><td>Usuario:<input name="usuario" type="text" style="width:130px;"></td></tr>
        <tr><td>Contraseña:<input name="contra" type="password" style="width:130px;"></td></tr>
         <tr><td><input name="inciar" type="submit" value="Iniciar Sesion"></td></tr>   
        </table>
</form>
<form action="inserir.php" method="post" name="f1">
<input name="registro" type="submit" value="Registrarse"> 
</form>'
;
?>
<?php
}
?>



cerrar_session.php
Código PHP:
<?php
session_start
();
if (isset(
$_POST['cerrar_session']))
{
    
session_destroy();
    
header ("Location: index.php");
}
?>

No me coje perfectamente el usuario y le cuesta mucho acceder. Ademas quiero que se me guarde la cookie durante una hora y eso no se como se hace. Agradecería la ayuda
  #2 (permalink)  
Antiguo 18/08/2011, 05:13
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Login usuario multinivel

Para lo de la cookie, tienes es parámetro expire en la definición: setcookie.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 18/08/2011, 05:28
 
Fecha de Ingreso: julio-2011
Mensajes: 25
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Login usuario multinivel

Gracias lo cookie más o menos con el manual y con un par de cosas he conseguido que funcione ahora lo que me falla esque cuando lo envio al Inicio no me sale ni el mensaje de bienvenida ni me pone el botón de cerrar sesión sino que me coje como si la sesion no estuivese ni hecha y me hace volver a loguearme.
  #4 (permalink)  
Antiguo 18/08/2011, 05:30
 
Fecha de Ingreso: julio-2011
Mensajes: 25
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Login usuario multinivel

Ya he conseguido solucionarlo poniendo

<?php
session_start();
?>

En cada pagina al principio era un fallo.

Etiquetas: login, multinivel, mysql, registro, sql, usuarios
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:44.