Foros del Web » Programando para Internet » PHP »

Sesiones multiusuario

Estas en el tema de Sesiones multiusuario en el foro de PHP en Foros del Web. Hola chicos/as, estoy haciendo este registro multiusuario pero no sé por qué no me funciona el código; a ver si me podías echar una mano, ...
  #1 (permalink)  
Antiguo 01/08/2015, 16:53
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 10 años, 5 meses
Puntos: 0
Sesiones multiusuario

Hola chicos/as, estoy haciendo este registro multiusuario pero no sé por qué no me funciona el código; a ver si me podías echar una mano, porque no detecto el error os copio el código: (SÉ QUE ES ALGO LARGO Y COMPLEJO).
EL CÓDIGO TIENE DISTINTOS ARCHIVOS, LO PARTO EN VARIOS MENSAJES PORQUE SI NO NO ME CABE:



Página de login
Código PHP:
<?php
include ('../php/conexion.php');
if(isset(
$_SESSION['nombreusuario'])==true and isset($_SESSION['rol'])==true){
    if(
$_SESSION['rol'] == 'alumnado'){
        
header('Location: alumnado.php');
    }else if(
$_SESSION['rol'] == 'profesorado'){
        
header('Location: profesorado.php');
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login por Areas</title>

<link href="css.css" rel="stylesheet">
<script src="../js/jquery.js"></script>
<script src="../js/myjava.js"></script>
</head>

<body>
    <div class="login" align="center">
        <h2>INICIE SESION</h2>
        <label>Ingrese su Usuario:</label>
        <br />
        <input type="text" id="nombreusuario"/>
        <br />
        <br />
        <label>Ingrese su Contraseña:</label>
        <br />
        <input type="contraseña" id="contraseña"/>
        <br />
        <br />
        <label>Elija su rol:</label>
        <br />
        <select id="rol">
            <option value="profesorado">profesorado</option>
            <option value="alumnado">alumnado</option>
        </select>
        <br />
        <br />
        <button id="ingresar">Ingresar</button>
        <br />
        <br />
        <div id="mensaje"></div>
    </div>
</body>
</html>
Archivo de conexión:
Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('jarabel_platform'$conexion);
session_start();
?>
ARCHIVO DE PROCESAR EL LOGIN:

Código PHP:
<?php
include('conexion.php');
$nombreusuario addslashes($_POST['nombreusuario']);
$contraseña addslashes($_POST['contraseña']);
$rol addslashes($_POST['rol']);

$nombreusuario mysql_query("SELECT * FROM datos_usuarios WHERE nombreusuario = '$nombreusuario'");
if(
mysql_num_rows($nombreusuario)<1){
    echo 
'nombreusuario';
}else{
    
$rol mysql_query("SELECT * FROM datos_usuarios WHERE nombreusuario = '$nombreusuario' AND rol = '$rol'");
    if(
mysql_num_rows($area)<1){
        echo 
'rol';
    }else{
        
$consulta mysql_query("SELECT * FROM datos_usuarios WHERE id_nombreusuario = '$nombreusuario' AND contraseña = '$contraseña'");
        if(
mysql_num_rows($consulta)<1){
            echo 
'nombreusuario';
        }else{
            
$consulta2 mysql_fetch_array($consulta);
            
$_SESSION['nombreusuario'] = $consulta2['nombreusuario'];
            
$_SESSION['rol'] = $consulta2['rol'];
            switch(
$consulta2['rol']){
                case 
'alumnado':
                    echo 
'alumnado';
                break;
                case 
'profesorado':
                    echo 
'profesorado';
                break;
            }
        }
    }
}
?>
ARCHIVO PARA LOGIN OUT:

Código PHP:
<?php
session_start
();
session_destroy();
header('Location: index4.php');
?>
ARCHIVO TIPO DE USUARIO I: ALUMNADO.

Código PHP:
<?php
include('../php/conexion.php');
if(isset(
$_SESSION['nombreusuario'])==false or isset($_SESSION['rol'])==false){
    
header('Location: login.php');
}else{
    if(
$_SESSION['rol'] == 'profesorado'){
        
header('Location: profesorado.php');
    }else{
        
$nombre mysql_query("SELECT * FROM usuarios WHERE nombreusuario = '".$_SESSION['nombreusuario']."'");
        
$nombre2 mysql_fetch_array($nombre);
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login por Areas</title>

<link href="../css/estilo.css" rel="stylesheet">
<script src="../js/jquery.js"></script>
<script src="../js/myjava.js"></script>
</head>
<body>
<img id="fondo" src="../recursos/ventas_fondo.jpg"/>
<header>
    <table align="left" border="0" height="100%" width="100%">
        <tr>
            <td><b>AREA DE VENTAS</b></td>
            <td width="300" align="left"><label>Bienvenido/a: <?php echo $nombre2['nombreusuario']; ?></label></td>
            <td width="50"><a href="logout.php">Salir</a></td>
        </tr>
    </table>
</header>

</body>
</html>
ARCHIVO TIPO DE USUARIO 2:

Código PHP:
<?php
include('../php/conexion.php');
if(isset(
$_SESSION['nombreusuario'])==false or isset($_SESSION['rol'])==false){
    
header('Location: login.php');
}else{
    if(
$_SESSION['rol'] == 'profesorado'){
        
header('Location: profesorado.php');
    }else{
        
$nombre mysql_query("SELECT * FROM usuarios WHERE nombreusuario = '".$_SESSION['nombreusuario']."'");
        
$nombre2 mysql_fetch_array($nombre);
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login por Areas</title>

<link href="../css/estilo.css" rel="stylesheet">
<script src="../js/jquery.js"></script>
<script src="../js/myjava.js"></script>
</head>
<body>
<img id="fondo" src="../recursos/ventas_fondo.jpg"/>
<header>
    <table align="left" border="0" height="100%" width="100%">
        <tr>
            <td><b>AREA DE VENTAS</b></td>
            <td width="300" align="left"><label>Bienvenido/a: <?php echo $nombre2['nombreusuario']; ?></label></td>
            <td width="50"><a href="logout.php">Salir</a></td>
        </tr>
    </table>
</header>

</body>
</html>
  #2 (permalink)  
Antiguo 01/08/2015, 16:54
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Sesiones multiusuario

continuo con EL CÓDIGO:
FUNCIÓN JS 1:
$(function(){

$('#ingresar').on('click',function(){
var usu = $('#usu').val();
var pass = $('#pass').val();
var area = $('#area').val();
var url = '../php/procesar_login.php';
var total = usu.length * pass.length * area.length;
if (total>0){
$.ajax({
type: 'POST',
url: url,
data: 'usu='+usu+'&pass='+pass+'&area='+area,
success: function(valor){
if(valor == 'usuario'){
$('#mensaje').addClass('error').html('El usuario ingresado no existe').show(300).delay(3000).hide(300);
$('#usu').focus();
return false;
}else if(valor == 'area'){
$('#mensaje').addClass('error').html('Usted no pertenece al area seleccionada').show(300).delay(3000).hide(300);
$('#area').focus();
return false;
}else if(valor == 'password'){
$('#mensaje').addClass('error').html('Su password es incorrecto').show(300).delay(3000).hide(300);
$('#pass').focus();
return false;
}else if(valor == 'ventas'){
document.location.href = 'ventas.php';
}else if(valor == 'almacen'){
document.location.href = 'almacen.php';
}
}
});
return false;
}else{
$('#mensaje').addClass('error').html('Complete todos los campos').show(300).delay(3000).hide(300);
}
});

});
  #3 (permalink)  
Antiguo 01/08/2015, 16:56
 
Fecha de Ingreso: septiembre-2013
Mensajes: 76
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Sesiones multiusuario

A LO ANTERIOR LE AÑADO ESTA FUNCIÓN JQUERY, QUE NO LA PUEDO COPIAR ENTERA:


QUERY:

/*!
* jQuery JavaScript Library v1.11.0
* http://jquery.com/
*
* Includes Sizzle.js
* http://sizzlejs.com/
*
* Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors
* Released under the MIT license
* http://jquery.org/license
*
* Date: 2014-01-23T21:02Z
*/

(function( global, factory )
  #4 (permalink)  
Antiguo 01/08/2015, 17:26
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 8 meses
Puntos: 263
Respuesta: Sesiones multiusuario

es exageradamente largo tu codigo, yo tengos sistemas multiusuario y no tengo un codigo taaaaaaan extenso, solo muestro y oculto paginas, menus entre otros de acuerdo al nivel del usuario que se loguea, a la final vas a tener que explicar exactamente cual es el error porque a la final de esta biblia no lo comentaste
__________________
[email protected]
HITCEL

Etiquetas: html, multiusuario, mysql, registro, select, sesiones, 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 21:03.