Sesiones

ivanalexanderm
08 de Octubre del 2002
Que onda.. soy nuevo en esto del php y echandole una vista al manual de este sitio me encontre con un problema al tratar de ejecutar un script de ejemplo en mi maquina el script es el siguiente:

<?
session_register('contador');
?>
<HTML>
<HEAD>
<TITLE>contador.php</TITLE>
</HEAD>
<BODY>
<?
If (isset($contador)==0)
{$contador=0;}
++$contador;
echo "<a href="contador.php">Has recargado esta página $contador veces</a>";
?>
</BODY>
</HTML>

al tratar de ejecutarlo en mi maquina me manda 3 warnings que son estos:

Warning: open(/tmpsess_18ff7fecd7197ca2e36328b10209b20f, O_RDWR) failed: No such file or directory (2) in c:appservwwwprimerosphpcontador.php on line 2

Warning: open(/tmpsess_18ff7fecd7197ca2e36328b10209b20f, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

Espero alguien me pueda explicar que es lo que estoy haciendo mal.

Gracias

fLIPIS
08 de Octubre del 2002
Si, hay una cosa que estás haciendo mal. Por defecto, php tiene configurado un directorio para almacenar las sesiones. Pero en realidad podemos hacerlo nosotros mismos del siguiente modo:

Crea, en el mismo directorio del script, un nuevo subdirectorio llamado /tmp y ejecuta el script, pero reemplazando esto:

<?
session_register('contador');
?>


por esto

<?
session_save_path("tmp");
session_register('contador');
?>

Necesitas especificar un path donde almacenar la sesión. Ahora, si abres el fichero que contiene la sesión verás que este contiene la variable junto a su valor de este modo:

contador|i:11;

Espero que te ayude

fLIPIS