Hola,
En primer lugar, muchas gracias a todos por vuestra ayuda
He hecho los cambios en los scripts y verificado los parámetros de configuración de sesión en el php.ini y el tema de las cookies y francamente, no se lo que pasa.
1.- Script de control
Código PHP:
if (mysql_num_rows($queryresult) == 1)
{
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
$_SESSION["autentificado"]= "SI";
header ("Location: aplicacion.php");
exit();
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
exit();
}
2.- Preguntando por variable de sesión
Código PHP:
<?
//Inicio la sesión
session_start();
echo $_SESSION["autentificado"];
echo "Aqui estoy";
//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
if ($_SESSION["autentificado"] == "SI") {
$entro = "SI";
}else
{
//si no existe, envio a la página de autentificacion
header("Location: index.php");
//ademas salgo de este script
exit();
}
?>
3.- La parte correspondiente a sesión de mi php.ini. Como estoy en windows he jugado con el path.
Código PHP:
[Session]
; Handler used to store/retrieve data.
session.save_handler = files
; Argument passed to save_handler. In the case of files, this is the path
; where data files are stored. Note: Windows users have to change this
; variable in order to use PHP's session functions.
session.save_path = \tmp
; Whether to use cookies.
session.use_cookies = 1
; This option enables administrators to make their users invulnerable to
; attacks which involve passing session ids in URLs; defaults to 0.
; session.use_only_cookies = 1
; Name of the session (used as cookie name).
session.name = PHPSESSID
; Initialize session on request startup.
session.auto_start = 1
; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 0
; The path for which the cookie is valid.
session.cookie_path = /
; The domain for which the cookie is valid.
session.cookie_domain =
; Handler used to serialize data. php is the standard serializer of PHP.
session.serialize_handler = php
; Define the probability that the 'garbage collection' process is started
; on every session initialization.
; The probability is calculated by using gc_probability/gc_dividend,
; e.g. 1/100 means 1%.
session.gc_probability = 1
session.gc_dividend = 1000
; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
session.gc_maxlifetime = 1440
; PHP 4.2 and less have an undocumented feature/bug that allows you to
; to initialize a session variable in the global scope, albeit register_globals
; is disabled. PHP 4.3 and later will warn you, if this feature is used.
; You can disable the feature and the warning seperately. At this time,
; the warning is only displayed, if bug_compat_42 is enabled.
session.bug_compat_42 = 0
session.bug_compat_warn = 1
; Check HTTP Referer to invalidate externally stored URLs containing ids.
; HTTP_REFERER has to contain this substring for the session to be
; considered as valid.
session.referer_check =
; How many bytes to read from the file.
session.entropy_length = 0
; Specified here to create the session id.
session.entropy_file =
;session.entropy_length = 16
;session.entropy_file = /dev/urandom
; Set to {nocache,private,public,} to determine HTTP caching aspects.
; or leave this empty to avoid sending anti-caching headers.
session.cache_limiter = nocache
; Document expires after n minutes.
session.cache_expire = 180
; trans sid support is disabled by default.
; Use of trans sid may risk your users security.
; Use this option with caution.
; - User may send URL contains active session ID
; to other person via. email/irc/etc.
; - URL that contains active session ID may be stored
; in publically accessible computer.
; - User may access your site with the same session ID
; always using URL stored in browser's history or bookmarks.
session.use_trans_sid = 0
; The URL rewriter will look for URLs in a defined set of HTML tags.
; form/fieldset are special; if you include them here, the rewriter will
; add a hidden <input> field with the info which is otherwise appended
; to URLs. If you want XHTML conformity, remove the form entry.
; Note that all valid entries require a "=", even if no value follows.
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
4.- Cookies ( en Internet Explorer 6.0.2600.0000 sobre XP )
Código PHP:
* Sobreescribir la administración automática de cookies (SI)
* Cookies de origen (Aceptar)
* Cookies de terceros (Aceptar)
* Aceptar siempre las cookies de sesión (SI)
Espero encontrar el problema, ya no se que probar,
Gracias