Ver Mensaje Individual
  #23 (permalink)  
Antiguo 07/02/2008, 18:27
Avatar de Nemutagk
Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Re: que significan estos errores?

la verdad es que no me habia dado cuenta de un error en autentificar

Código 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>Untitled Document</title>
</head>

<body>
</body>
</html>
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if( ($_POST[nick] == ' ') or ($_POST[pass] == ' ') )//comprobamos que las variables enviadas por el form de login.php tienen contenido
{
Header("Location: login.php"); //estan vacías, volvemos al index
}else{

//comprobamos en la db si existe ese nick con esa pass
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
if(
$user_ok mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
{

session_register("usuario"); //registramos la variable usuario que contendrá el nick del user
session_register("idusuario"); //registramos la variable idusuario que contendrá la id del user
session_register("level"); //registramos la variable level que contendrá el level del user
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; //damos el nick a la variable usuario
$_SESSION[idusuario] = $user_ok["id"]; //damos la id del user a la variable idusuario
$_SESSION[level] = $user_ok["level"]; //damos el level del user a la variable level
Header("Location: login.php"); //volvemos al login donde nos saldrá nuestro menú de usuario

}else{
echo 
'Nick y pass incorrectos';
}

}
?>
quita todo el codigo html y deja unicamente el codigo php, igual para el archivo config.php, el error que te muestra es que cuando hay algo antes de session_start() como espacios en blanco (fuera de los tag <?php y ?>) codigo html o un echo, o print antes de session_start() lo que hace es que se envian las cabeceras lo cual tienes que evitar, por eso, asegurate de quitar todo el codigo html, espacios y demas antes de tu session_start();

ahora tambien tienes otro error, falta ingresar el session_start() en el archivo autentificar, para poder ingresar las variables a tu sesion tienes que iniciarla primero

Código PHP:
session_start();
$_SESSION["variable1"] = "valor";
$_SESSION["variable2"] = "valor";
$_SESSION["variable3"] = "valor"
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)