Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/12/2005, 12:50
daenor
 
Fecha de Ingreso: diciembre-2004
Mensajes: 197
Antigüedad: 19 años, 4 meses
Puntos: 1
Sesiones: no puedo pasar los datos de una pagina a otra

Buenas gentes!!!!

Bien, eso es.
No puedo hacer que pasen los datos de una pagina a otra en el sitio.
Realmente no se como hacer lo de las sesiones, mas o menos me guie con el autentificator de Cluster, pero tampoco lo pude hacer funcionar.
Seguido les agrego los codigos
Empieza con un formularo usuario(user) y password (pass)

que tiene como acciona esto:
Código PHP:

$user
=$_POST['user'];
$pass=$_POST['pass'];

//if ($user=="" || $pass==""){
//    header("Location: index.php?error_login=2");
//    }

require ("setup/log.con.inc.php");

//connect to database
if ($user && $pass){
    
$db_conexion mysql_connect($sql_host,$sql_usuario,$sql_pass) or die (header("Location: index.php?error_login=0"));
    
mysql_select_db($sql_db) or die (header("Location: index.php?error_login=0"));
//make query
$query "SELECT Usuario,Clave,IdUsuario FROM $sql_tabla WHERE Usuario = '$user' AND Clave = '$pass'";
$usuario_consulta mysql_query($query) or die (header("Location: index.php?error_login=1"));


//see if there's an EXACT match
$num mysql_num_rows($usuario_consulta);
if (
$num == 1){

    
// eliminamos barras invertidas y dobles en sencillas
    
$user stripslashes($user);

    
// almacenamos datos del Usuario en un array para empezar a chequear.
     
$usuario_datos mysql_fetch_array($usuario_consulta);
  
    
// liberamos la memoria usada por la consulta, ya que tenemos estos datos en el Array.
    
mysql_free_result($usuario_consulta);
    
// cerramos la Base de dtos.
    
mysql_close($db_conexion);
    
    
// chequeamos el nombre del usuario otra vez contrastandolo con la BD
    // esta vez sin barras invertidas, etc ...
    // si no es correcto, salimos del script con error 4 y redireccionamos a la
    // página de error.
    
if ($user != $usuario_datos['Usuario']) {
           
header("Location: index.php?error_login=0");
        exit;
        }

    
// si el password no es correcto ..
    // salimos del script con error 3 y redireccinamos hacia la página de error
    
if ($pass != $usuario_datos['Clave']) {
        
header ("Location: $redir?error_login=3");
        exit;}

    
// Paranoia: destruimos las variables login y password usadas
    
unset($user);
    unset(
$pass);

    
// En este punto, el usuario ya esta validado.
    // Grabamos los datos del usuario en una sesion.
    
     // le damos un mobre a la sesion.
    
session_name($usuarios_sesion);
     
// incia sessiones
    
session_start();

    
// Paranoia: decimos al navegador que no "cachee" esta página.
    
session_cache_limiter('nocache,private');
    
    
// Asignamos variables de sesión con datos del Usuario para el uso en el
    // resto de páginas autentificadas.

    
$_SESSION['user'] = $usuario_datos['Usuario'];
    
$_SESSION['pass'] = $usuario_datos['Clave'];
    
$_SESSION['id'] = $usuario_datos['IdUsuario'];

    
   } 
}
print 
$_SESSION['user'];
echo 
"</P>";
print 
$_SESSION['pass'];
echo 
"</P>";
print 
$_SESSION['id'];
header ("Location: manual.php");
?> 

Seguido, tengo una pagina llamada manual.php. En ella puse un var_dump para saber si las variables de sesion aun existian, y tambien llame a las variables, tal como hago al terminar :
print $_SESSION['user'];
echo "</P>";
print $_SESSION['pass'];
echo "</P>";
print $_SESSION['id'];

pero me tira null...

que estoy haciendo mal?
o mejor dicho, que deberia poner yo para que cuando entre a manual me siga tomando las variables de la sesion
__________________
Diseñador y Desarrolador en Proyecto81 WebStudio

Última edición por daenor; 07/12/2005 a las 13:54