Ver Mensaje Individual
  #1  
Antiguo 10-05-2008
lakers lakers is offline
Miembro
 
Registrado: abr 2007
Posts: 47
Reputación: 0
lakers Va por buen camino
¿cómo puedo loguear?

hola muy buenas a tod@s
estoy intentando hacer un logueo para que solamente las personas que estàn registradas(logueadas) pueden entrar en la página,y una vez que estàn logueadas pues asignarle un identificador para efectuar una serie de operaciones(compra,etc...) es lo que se llama la propagación de sessiones.
lo que ocurre me sale el siguiente error y no sé cómo resolverlo.
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\pruebas\index.php:8)
(sabiendo que no dejo ningun espacio en blanco ni nada)
pagina que efectua el logueo es la siguiente :si observais algo que se puede
quitar o mejorar estaré agradecido.yaque estoy una persona novate en el mundo de php.
Código PHP:
session_name();
session_start();
mysql_connect("localhost","","host") or die ("<h2>Problemas al establecer la conexión</h2>");
mysql_select_db("prueba") or die ("<h2> Problemas al seleccionar la base de datos</h2>");
if(
$_POST['username'])
{
  
$usernarme=$_POST['username'];
  
$password=$_POST['password'];
  if(empty(
$password) || empty($username)){
   echo 
"<h2> el campo del nombre o la contraseña no fueron enviados</h2>";}
  else 
  {
   
$query="select usuario,clave from usuarios where usuario='".$username."'";
   
$result=mysql_query($query);
   
$data=mysql_fetch_array($result);
   if(
$data['clave']!=$password){
 
        echo 
"<h2> Usted no tienes el permiso para entrar aqui </h2>";
 }
   else 
   {
     
$q=mysql_query("select usuario,clave from usuarios where usuario='$username' and clave='$password'") or die (mysql_error());
     
$row=mysql_fetch_array($q);
  
$_SESSION["s_username"]=$row['usuario'];
  
$valid_user=$s_username;
  
session_register("valid_user"); //1 
  
echo " <a href=\"index.php ?PHPSESSID=".$PHPSESSID."\"><h2>Pulse   aqui  para acceder la página principal</h2></a>";//2  
 
   
}
  } 

¿?se puede omitir ¿?//1
¿?en vez de propagar la session mediante PHPSESSID existe otra alternativa ¿?//2
página del index
Código PHP:
<html>
<head>
 <title></title>
</head>
<body text="#000000">
  <p><img src="bibliotecas.jpg" width="190" height="100" </p> 
  <p>&nbsp;</p>
  <?php 
  session_start
(); //me da el fallo que comenté
  
echo "<h2> por favor elija una categoria: </h2>";
en las otras páginas relacionadas con el index.php siempre empiezo con session_start() con la intención de que si ya se inicializo una session pues que termine con ella y si no que crea una nueva.
espero que me explicado + o - bien.
gracias por vuestra ayuda.
en la espera de vuestras respuestas les saludo atentamente.
muchas gracias
Responder Con Cita