Foros del Web » Programando para Internet » PHP »

Primera vez que trabajo con sessiones

Estas en el tema de Primera vez que trabajo con sessiones en el foro de PHP en Foros del Web. Amigos me encontre una revista que habla de sessiones en php, el articulo esta muy explicativo y sencillo ademas trae los archivos ya hechos para ...
  #1 (permalink)  
Antiguo 02/10/2006, 05:29
Avatar de 8461277  
Fecha de Ingreso: diciembre-2002
Ubicación: san juan de los morros
Mensajes: 887
Antigüedad: 21 años, 11 meses
Puntos: 1
Primera vez que trabajo con sessiones

Amigos me encontre una revista que habla de sessiones en php, el articulo esta muy explicativo y sencillo ademas trae los archivos ya hechos para practicar que nota.

Mi problema radica es que coloco estos archivos en mi servidor local tala como esta la explicacion de la revista y me sale un error.

Los codigos son esto:

formulario entrada
Código PHP:
<html
<
head
<
title>FORMULARIO DE AUTENTIFICACIÓN</title
</
head
<
body
 
<
form action="comprueba.php" method="POST"
<
table align="center" width="250" cellspacing="1" cellpadding="1" border="0"
<
tr
<
td align="right">Usuario:</td
<
td><input type="Text" name="login"></td
</
tr
<
tr
<
td align="right">Clave:</td
<
td><input type="password" name="clave"></td
</
tr
<
tr
<
td colspan="2" align="center"><input type="Submit" value="Entrar"></td
</
tr
</
table
</
form

</
body
</
html
comprueba.php
Código PHP:
<?PHP
//conexión con la bd 
$conectar mysql_connect("localhost","root",""); 
//selecciono la bd 
mysql_select_db("noticiaaldia",$conectar); 
$login=$_POST['login'];
$clave=$_POST['clave'];
//Sentencia SQL para buscar si ese usuario existe y coincide su clave 
$sql "SELECT * FROM administracion WHERE login='$login' and clave='$clave'"

//ejecuta
$result mysql_query($sql,$conectar); 
 
if (
mysql_num_rows($result)!=0){ 
    
//el usuario y contraseña son válidos y se inicia la sesión 
    
session_start(); 
    
session_register("autentificado"); 
    
$autentificado "SI"
    
header ("Location: zona.php"); 
}else { 
    
//si no existe se le redirige de nuevo a la portada
    
header("Location: entrada.html "); 

mysql_free_result($result); 
mysql_close($conectar); 
?>
comprueba_seguridad.php
Código PHP:
<?php
//Inicio la sesión 
session_start(); 

//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO 
if ($_SESSION["autentificado"] != "SI") { 
    
//si no existe, envio a la página de autentificacion 
    
header("Location: entrada.html"); 
    
//ademas salgo de este script 
    
exit(); 

?>
Zona.php
Código PHP:
<?php

include ("comprueba_seguridad.php");

?> 
<html> 
<head> 
<title>Zona privada</title> 
</head> 
<body> 

ESTA ZONA ES SEGURA Y LA VES PORQUE TE HAS AUTENTIFICADO 

<br> 
<a href="salir.php">Salir</a> 
</body> 
</html>
es aqui cuando me lanza el siguiente error:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at c:\wamp\www\noticiaaldia\sesion\comprueba_segurida d.php:1) in c:\wamp\www\noticiaaldia\sesion\comprueba_segurida d.php on line 3

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at c:\wamp\www\noticiaaldia\sesion\comprueba_segurida d.php:1) in c:\wamp\www\noticiaaldia\sesion\comprueba_segurida d.php on line 3


Que puede ser alguin por favor me podria explicar como funciona, ademas en la revista explica todo pero no le da ese error

Ayuda plisss
__________________
Miguel Padrón :cool:
  #2 (permalink)  
Antiguo 02/10/2006, 05:40
Avatar de GUNIRAN  
Fecha de Ingreso: octubre-2003
Ubicación: Rosario, Santa Fe, Argent
Mensajes: 65
Antigüedad: 21 años
Puntos: 0
Fíjate que no te haya quedado ningún espacio en blanco antes de llamar a la función session_start(), el error te dice que la cabecera ya ha enviado algo.
__________________
Saludos,
Matías Hernán Piuma - Desarrollador Web
Programador PHP Freelance, especialidad: PHP / MySQL / XHTML / CSS
Rosario, Argentina
  #3 (permalink)  
Antiguo 02/10/2006, 05:42
Avatar de 8461277  
Fecha de Ingreso: diciembre-2002
Ubicación: san juan de los morros
Mensajes: 887
Antigüedad: 21 años, 11 meses
Puntos: 1
Gracias guniran, en donde de los archivos debo revisar plor favor
__________________
Miguel Padrón :cool:
  #4 (permalink)  
Antiguo 02/10/2006, 05:42
Avatar de 8461277  
Fecha de Ingreso: diciembre-2002
Ubicación: san juan de los morros
Mensajes: 887
Antigüedad: 21 años, 11 meses
Puntos: 1
Eso era ya lo revise mil gracias hermano
__________________
Miguel Padrón :cool:
  #5 (permalink)  
Antiguo 02/10/2006, 08:14
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Pues .. el artículo que comentas que usa session_register() está bastante desactualizado.

Deberías usar el array superglobal: $_SESSION y no session_register() para registrar tus variables de sesión y/o accederlas.

Te invito a leer la documentación oficial al respecto:
www.php.net/session

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 13:13.