Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/07/2010, 16:15
Avatar de ylellan
ylellan
 
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años
Puntos: 36
Respuesta: Problemas con sesiones en php

pues primero hago un inicio de sesion:

Código PHP:
<?php 
session_start
(); 
?>

<!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>
<link rel="icon" href="images/stop.ico" type="image/x-icon">
<link rel="shortcut icon" href="images/stop.ico" type="image/x-icon">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<SCRIPT>
function validar(formulario){
  // primera comprobación
  if(formulario.usuario.value == ''){
    // informamos del error
    alert('INGRESE SU RPE');
    // seleccionamos el campo incorrecto
    formulario.usuario.focus();
    return false;
  }
  if(formulario.contrasena.value == ''){
    // informamos del error
    alert('INGRESE SU CONTRASEÑA');
    // seleccionamos el campo incorrecto
    formulario.contrasena.focus();
    return false;
  }
  return true;
}
//-->
function fo()
{
form1.usuario.focus();
}
</script>

<style type="text/css">
<!--
#Layer2 {
    position:absolute;
    width:200px;
    height:115px;
    z-index:1;
    left: 560px;
    top: 200px;
}
#Layer3 {
    position:absolute;
    width:200px;
    height:58px;
    z-index:1;
    left: 250px;
    top: 414px;
}
#Layer4 {
    position:absolute;
    width:331px;
    height:67px;
    z-index:2;
    left: 11px;
    top: 14px;
}
.Estilo1 {
    font-size: 36px;
    font-weight: bold;
}
-->
</style>
</head>
<body>
<div id="Layer1">
  <form id="form1" onsubmit=" return validar(this)" name="form1" method="post" action="consultar_pas.php"><P align="center">&nbsp;</p>
    <P align="center">&nbsp;</p>
    <P align="center" class="Estilo1"><font face="ARIAL">INICIO DE SESION</font></p>
    <br />
    <br /></label>
   <center class="Estilo8">  <table width="313" border="0" >
      <tr>
        <th colspan="2"   bgcolor="#33CC33" scope="col"><div align="center" class="Estilo11">DATOS : </div>          
          <div align="center" class="Estilo8"></div></th>
      </tr>
      <tr>
      <?php if ($_GET["errorusuario"]=="pai"){echo '<td colspan="2" align="center" 
        bgcolor=red><span class="Estilo3">Contraseña Incorrecta</span></td>'
;}
        if (
$_GET["errorusuario"]=="pui"){echo '<td colspan="2" align="center" 
        bgcolor=red><span class="Estilo3">NO EXISTE USUARIO</span></td>'
;}
         if (
$_GET["errorusuario"]=="in"){echo '<td colspan="2" align="center" 
        bgcolor=red><span class="Estilo3">Usuario Invalido</span></td>'
;}
         if (
$_GET["errorusuario"]==""){echo ' <td colspan="2" align="center" 
            bgcolor=#FFFFFF><span class="Estilo3"><span class="Estilo6">Introduce Tus Datos</span></span></td>'
;}
        
?>
      </tr>
      <tr bgcolor="#FFFFFF">
        <th width="97" scope="col"><div align="left" class="Estilo14">RPE:</div></th>
        <th width="200" scope="col"><div align="left" class="Estilo8">
            <input name="usuario" type="text" id="usuario" value="<?php if (isset($_SESSION['usuario'])){ echo $_SESSION['usuario']; } ?>" style="text-transform: uppercase;"/>
          </div>
          
          <span class="Estilo8">
          </label>          
          </span></th>
      </tr>
      <tr bgcolor="#FFFFFF">
        <td height="43"><div align="left" class="Estilo14"><strong>CONTRASE&Ntilde;A:</strong></div></td>
        <td><div align="left">
          <input name="contrasena" type="password" id="contrasena" />
        </div></td>
      </tr>
      <tr bgcolor="#FFFFFF">
        <td height="43" colspan="2"><label>
        <center><input type="submit" name="Submit" value="ENTRAR" />   
          <input type="button" name="Submit2" value="CANCELAR" onclick="javascript:window.close();"/>
        </center>       </label>
          <div align="center"><span class="Estilo8">
          </span><span class="Estilo8">          </span></div></td>
      </tr>
    </table> 
   </center> 
   </form>
   </body>
</html>
Código PHP:
<?php 
session_start
(); 
include(
"conexion.php"); 
//guardamos los valores que fueron enviados por el formulario en variables de sesion 
$_SESSION['usuario'] = $_POST['usuario']; 
$usuario=$_POST['usuario'];
$contrasena=$_POST['contrasena'];
conectar();
$queEmp_usuario=mysql_query("SELECT alias,password,tipo FROM password WHERE alias='$usuario'");
$existe_usuario=mysql_num_rows($queEmp_usuario); 
$registro=mysql_fetch_row($queEmp_usuario);
desconectar();
if(
$existe_usuario>0)
{
if(
$registro[1]==$contrasena && $registro[1]!='')
{

    
$_SESSION['tipo']=$registro[2];    
$_SESSION['usuario']=$registro[0];
$_SESSION["admitido"]= "si";
header ("Location:bien.php");    
}
else
{
//contraseña incorrecta incorrecto
header("Location: password.php?errorusuario=pai");
}

}
else
{
//contraseña incorrecta incorrecto
header("Location: password.php?errorusuario=pui");

    
?>
y para que nadie entre al menu principal solo agrego este codigo:

seguridad.php
Código PHP:
<?php
session_start
();
if(
$_SESSION["admitido"] != "si"){
    
header("location: password.php");
    exit();
}
?>
pero en cada pag incluyo el archivo y ya