Problemas con la sesion

Oscar
30 de Noviembre del 2009
Muy buenas

Estoy haciendo una web para mi novia, desde hace tiempo que no toco PHP pero me he vuelto a poner a ello.
Aunque lo recuerdo mejor de lo que creía, me estoy pegando con problema de sesiones.
Quiero guardar una valor en sesion y comprobarlo con la entrada del usuario, pasandolo por un formulario.
Para ello uso la variable global $_SESSION, pero no me está funcionando.
Después de revisar el manual y hacer 1000 pruebas no me funciona, no se si podreís echarme un cable.

Aquí esta el codigo de los ficheros


////////////////////////////////////////////////////////////
//////////////////////////// _getAleatorio.php
////////////////////////////////////////////////////////////
<?php

if(!isset($_SESSION))
session_start();

if (isset($_SESSION['cadena']))
unset($_SESSION['cadena']);
$_SESSION['cadena'] = rand(0,4) . "";

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<form action="_getAleatorio.php" method="post" id="f" name="f">
Cadena: <input type="text" id="cadena" name="cadena" value="<?=$_SESSION['cadena']?>" /><br/>
<input type="submit" id="submit" name="submit" value="Enviar">
</form>
</body>
</html>


////////////////////////////////////////////////////////////
//////////////////////////// _setAleatorio.php
////////////////////////////////////////////////////////////
<?php
if(!isset($_SESSION)){
echo 'No sesion ';
} else if ( !isset($_SESSION['cadena']) ) {
echo 'No cadena ';
}else {
echo $_SESSION['cadena'];
}
?>

El formulario se escribe bien, con el valor $_SESSION['cadena'] en el formulario.
Pero cuando envio el formulario, no funciona; el resultado es siempre "No sesion", por lo que no me guarda los valores en sesión.
¿ Estoy haciendo algo mal ? ¿ Me falta algo de configurar o definir ?

Gracias