Foros del Web » Programando para Internet » PHP »

Error en sessions.

Estas en el tema de Error en sessions. en el foro de PHP en Foros del Web. Buenos dias estimados amigos foristas : Tengo el siguiente problema.... Tengo mi formulario donde a través de un post envío mi nombre de usuario y ...
  #1 (permalink)  
Antiguo 31/07/2012, 10:28
 
Fecha de Ingreso: septiembre-2009
Ubicación: Venezuela
Mensajes: 92
Antigüedad: 14 años, 7 meses
Puntos: 1
Error en sessions.

Buenos dias estimados amigos foristas :

Tengo el siguiente problema....

Tengo mi formulario donde a través de un post envío mi nombre de usuario y contraseña (logueo.php)

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4.  
  5. <title>Sistema de Requisiciones Electrónicas SISREL</title>
  6.  
  7. <style type="text/css">
  8. body {
  9.     background-image: url(images/inicio.jpg);
  10. }
  11. </head>
  12.  
  13.  
  14. <form action="acceso.php" method="POST">
  15.   <p>&nbsp;</p>
  16.   <p>&nbsp;</p>
  17.   <p>&nbsp;</p>
  18.   <p align="center">&nbsp;</p>
  19.   <table width="460" height="102" align="center" >
  20.     <tr>
  21.       <td width="452" height="41" border="1">Bienvenidos al Sistema de Requisiciones Electrónicas del GRUPO ALC</td>
  22.     </tr>
  23.     <tr>
  24.       <td><div align="center" border="1">Favor inicie sesión para ingresar al Sistema</div></td>
  25.     </tr>
  26.   <table width="240" align ="center" border="1">
  27.     <tr>
  28.       <td width="85" align="center"><strong>Usuario :</strong></td>
  29.       <td width="143"><input type="text" name="usuario" size="20" /></td>
  30.     </tr>
  31.     <tr>
  32.       <td align="center"><strong>Clave :&nbsp;</strong></td>
  33.       <td><input type="password" name="clave" size="20" /></td>
  34.     </tr>
  35.     <tr>
  36.       <td colspan="2" align="center"><input type="submit" value="Ingresar" name="ingresar"/></td>
  37.     </tr>
  38.   </table>
  39. </form>
  40. </body>
  41. </html>

Ahora bien... En acceso.php lo que busco es que si el usuario y clave son correctos (previa consulta en mi base de datos en mysql) levanto mis sesiones

Código PHP:
Ver original
  1. <?php
  2.  
  3. include("conecta.php");
  4. $link=conectarse();
  5.    
  6. $usuario=$_POST['usuario'];
  7. $clave=$_POST['clave'];
  8.  
  9. $result = mysql_query("SELECT * FROM usuario WHERE usuario='$usuario' and clave='$clave'",$link);
  10.  
  11. $row=mysql_num_rows($result);
  12. $row = mysql_fetch_assoc($result);
  13.  
  14.  
  15. if (mysql_num_rows($result)!=0){
  16.  
  17. $_SESSION['nombre'] = $row['nombre'];
  18. $_SESSION['cod_rol'] = $row['cod_rol'];
  19. $_SESSION['autentificado'] = 'SI';
  20.  
  21. }
  22.    echo "<script language=\"javascript\">window.location=\"index2.php\"</script>";
  23.    ?>

Que pasa... cuando solo me quedo en acceso.php y hago un echo de $_SESSION['autentificado'], puedo ver que me dice que si, pero cuando me voy a index2.php no me imprime el valor de la variable.....

Si uso href para irme a index2.php no paso de acceso.php a index2.php, sin embargo, si uso esta instruccion

Código Javascript:
Ver original
  1. echo "<script language=\"javascript\">window.location=\"index2.php\"</script>";

Si paso a index2.php PERO no veo el valor de mis variables de session....

Será que estoy haciendo algo mal ???? tengo ya 2 dias dandome golpes y no puedo pasar de esta sección...

Saludos.

Carlos.
__________________
Carlos !
  #2 (permalink)  
Antiguo 31/07/2012, 11:43
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años
Puntos: 127
Respuesta: Error en sessions.

fijate que la etiqueta de inicio de codigo este al pricipio del archivo en index2.php y que inmediatamente este: session_start(); para iniciar la sesion
  #3 (permalink)  
Antiguo 31/07/2012, 14:35
 
Fecha de Ingreso: septiembre-2009
Ubicación: Venezuela
Mensajes: 92
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Error en sessions.

Si por supuesto, tengo mi session start al iniciar index2.php pero de igual forma no se por qué razón se me pierde el valor del session.....

Podrá ser algo que estoy obviando ????
__________________
Carlos !
  #4 (permalink)  
Antiguo 01/08/2012, 08:14
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años
Puntos: 127
Respuesta: Error en sessions.

usa esto como tu acceso.php

Código PHP:
<?php
include("conecta.php");
$link=conectarse();
   
$usuario=$_POST['usuario'];
$clave=$_POST['clave'];
 
$result mysql_query("SELECT * FROM usuario WHERE usuario='$usuario' and clave='$clave'",$link);
 
$row=mysql_num_rows($result);
$row mysql_fetch_assoc($result);
 
 
if (
mysql_num_rows($result)!=0){
 
$_SESSION['nombre'] = $row['nombre'];
$_SESSION['cod_rol'] = $row['cod_rol'];
$_SESSION['autentificado'] = 'SI';
 
}
 
?>
   <script>
   window.location="index2.php";
   </script>
  #5 (permalink)  
Antiguo 01/08/2012, 08:28
 
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 389
Antigüedad: 13 años, 2 meses
Puntos: 16
Respuesta: Error en sessions.

en vez de usar javascript para redireccionar la pagina. puedes usar el mismo php usando location
Código PHP:
Ver original
  1. header('location: index2.php');
__________________
Lo imposible es lo posible visto por los ojos de un incapaz.
Si te sirve la respuesta. dale + al karma.
Saludos

Etiquetas: formulario, html, mysql, sql, variables, 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 17:58.