Foros del Web » Programando para Internet » PHP »

session_start (); un problema logico mas que todo ¿?

Estas en el tema de session_start (); un problema logico mas que todo ¿? en el foro de PHP en Foros del Web. ESTO FUNCIONA PERFECTAMENTE ESTO LO PONGO EN LA CABECERA DE MI INDEX CON UN INCLUDE Y FUNCIONA AHORA TENGO VARIAS PESTAÑAS ESTO SERIA COMO MI ...
  #1 (permalink)  
Antiguo 03/03/2012, 09:43
 
Fecha de Ingreso: agosto-2011
Ubicación: la paz
Mensajes: 83
Antigüedad: 12 años, 8 meses
Puntos: 4
Exclamación session_start (); un problema logico mas que todo ¿?

ESTO FUNCIONA PERFECTAMENTE ESTO LO PONGO EN LA CABECERA DE MI INDEX CON UN INCLUDE Y FUNCIONA AHORA TENGO VARIAS PESTAÑAS ESTO SERIA COMO MI INICIO
| INICIO | PRODUCTOS | EMPRESAS |

AHORA SI VOY A LA PESTAÑA PRODUCTOS JALO EL session_start(); y las variables que necesito para trabajar.

EL PROBLEMA RADICA EN QUE CUANDO VUELVO A LA PESTAÑA INICIO ME DIRECCIONA COMO NO USUARIO AL INDEX NUEVAMENTE PERO COMO SI NO ME HUBIERA LOGUEADO ESO ES POR QUE CASI AL INICIO USO LA CONDICION "if((isset($_POST['usuario']))&&(isset($_POST['contrasena'])))"

LO QUE QUIERO ES UNA CONDICION PARA CUANDO VUELVA AL INICIO, APARESCA COMO USUARIO ¿COMO VALIDO EL session_start(); Y JALO LAS VARIABLE QUE QUIERO?


Código PHP:
Ver original
  1. <?php include("conexion/co.php");?>
  2. <?php
  3.  
  4. if((isset($_POST['usuario']))&&(isset($_POST['contrasena'])))
  5. {
  6.     $usuario= trim($_POST['usuario']);
  7.     $password = $_POST['contrasena'];
  8.     $b_user=mysql_query("SELECT * FROM usuario WHERE usuario='$usuario' and contrasena='$password' and confirmacion='si'");
  9.     $total=mysql_num_rows($b_user);
  10.     if($total==1){
  11.         $c_user=mysql_query("SELECT * FROM empresa,usuario WHERE usuario.usuario='$usuario'");
  12.         $row = mysql_fetch_array($c_user);
  13.         if($row['contrasena'] == $password)
  14.         {
  15.             switch($row["empresa"]){
  16.             case 'admin':
  17.                     session_start();
  18.                     $_SESSION["usuario"] = $row["usuario"];
  19.                     $_SESSION["id_empresa"]=$row["id_empresa"];
  20.                     $_SESSION["id_usuario"]=$row["id_usuario"];
  21.                     $_SESSION["nombre_empresa"]=$row["nombre_empresa"];
  22.                     $_SESSION["logo_empresa"]=$row["logo_empresa"];
  23.                     $_SESSION["empresa"]=$row["empresa"];
  24.                     $id=$_SESSION["id_empresa"];
  25.                     $nombreu = $_SESSION["usuario"];
  26.                     $nom=$_SESSION["nombre_empresa"];
  27.                     $idempresa=$_SESSION["id_empresa"];
  28.                     $idusuario=$_SESSION["id_usuario"];
  29.                     $verempresa=$_SESSION["empresa"];
  30.             break;
  31.             case 'si':
  32.                     session_start();
  33.                     $_SESSION["usuario"] = $row["usuario"];
  34.                     $_SESSION["id_empresa"]=$row["id_empresa"];
  35.                     $_SESSION["id_usuario"]=$row["id_usuario"];
  36.                     $_SESSION["nombre_empresa"]=$row["nombre_empresa"];
  37.                     $_SESSION["logo_empresa"]=$row["logo_empresa"];
  38.                     $_SESSION["empresa"]=$row["empresa"];
  39.                     $id=$_SESSION["id_empresa"];
  40.                     $nombreu = $_SESSION["usuario"];
  41.                     $nom=$_SESSION["nombre_empresa"];
  42.                     $idempresa=$_SESSION["id_empresa"];
  43.                     $idusuario=$_SESSION["id_usuario"];
  44.                     $verempresa=$_SESSION["empresa"];
  45.             break;
  46.             case 'no':
  47.                     session_start();
  48.                     $_SESSION["usuario"] = $row["usuario"];
  49.                     $_SESSION["id_empresa"]=$row["id_empresa"];
  50.                     $_SESSION["id_usuario"]=$row["id_usuario"];
  51.                     $_SESSION["nombre_empresa"]=$row["nombre_empresa"];
  52.                     $_SESSION["logo_empresa"]=$row["logo_empresa"];
  53.                     $_SESSION["empresa"]=$row["empresa"];
  54.                     $id=$_SESSION["id_empresa"];
  55.                     $nombreu = $_SESSION["usuario"];
  56.                     $nom=$_SESSION["nombre_empresa"];
  57.                     $idempresa=$_SESSION["id_empresa"];
  58.                     $idusuario=$_SESSION["id_usuario"];
  59.                     $verempresa=$_SESSION["empresa"];
  60.             break;
  61.         }
  62.         }
  63.         else{
  64.                         $ses =  mysql_fetch_array($b_user);
  65.                         $tip=$ses['confirmacion'];
  66.                         echo $tip;
  67.                         if($ses['confirmacion']=='si'){
  68.                                 ?>    
  69.                                 <script>
  70.                                     alert ("Su Contraseña o Usuario son incorrectos.");
  71.                              </script>
  72.                             <?php
  73.                                     echo '<meta http-equiv="Refresh" content="2;url=../../index.php"> ';
  74.                             }else{
  75.                                     ?>    
  76.                             <script>
  77.                             alert ("Su confirmacion de cuenta fue enviada a su email porfavor confirmar antesde loguearse.");
  78.                              </script>
  79.                             <?php
  80.                         echo '<meta http-equiv="Refresh" content="2;url=../../index.php"> ';
  81.                             }
  82.        
  83.         }
  84.     }
  85.     else
  86.     {
  87.        
  88.         ?>    
  89.             <script>
  90.                 alert ("Ese usuario no existe.");
  91.              </script>
  92.         <?php
  93.         echo '<meta http-equiv="Refresh" content="2;url=../../index.php"> ';
  94.     }
  95. }else{
  96.    
  97.         echo '<meta http-equiv="Refresh" content="2;url=../index.php"> ';
  98.    
  99.     }
  100.    
  101. if(isset($nombreu)){
  102.    
  103.     $verif="select * from usuario where usuario='$nombreu' and empresa='si'";
  104.     $reverif=mysql_query($verif);
  105.     $numverif=mysql_num_rows($reverif);
  106. }
  #2 (permalink)  
Antiguo 03/03/2012, 09:50
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: session_start (); un problema logico mas que todo ¿?

Pon el session_start() al princpio de todo, no cuando entre en un if, y listo.
Valida según las variables de $_SESSION[].
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 03/03/2012, 09:53
 
Fecha de Ingreso: agosto-2011
Ubicación: la paz
Mensajes: 83
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: session_start (); un problema logico mas que todo ¿?

ya probe con eso tampoco funciona
  #4 (permalink)  
Antiguo 03/03/2012, 09:59
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: session_start (); un problema logico mas que todo ¿?

Cita:
Iniciado por amils21 Ver Mensaje
LO QUE QUIERO ES UNA CONDICION PARA CUANDO VUELVA AL INICIO, APARESCA COMO USUARIO ¿COMO VALIDO EL session_start(); Y JALO LAS VARIABLE QUE QUIERO?
Repito. No se valida por session_start() sino por $_session[].
De la misma manera que validas los $_POST comprueba la $_SESSION
if(isset($_SESSION[...]))

Y sí, necesitarás el session_start() al principio y si redireccionas, en cada página.

Creo que me expliqué bien.
De todas formas podrías mirar ejemplos en el manual o ejemplos de sesiones para aprender.
Saludos
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 03/03/2012, 11:29
 
Fecha de Ingreso: agosto-2011
Ubicación: la paz
Mensajes: 83
Antigüedad: 12 años, 8 meses
Puntos: 4
Respuesta: session_start (); un problema logico mas que todo ¿?

a ok no entendi lo provare ok me sirvio mucho la yuda

Etiquetas: logico, mysql, sql, todo, 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 12:42.