Probremas con variable tipo $_SESSION en php!!!

Iniciado por alzehimer_cerebral, 10 Julio 2008, 00:33 AM

0 Miembros y 1 Visitante están viendo este tema.

alzehimer_cerebral

Os cuento un poco:

En mi php.ini he añadido:

session.save_path = /tmp/sesion_logs

Los codigos son de un manual y son los siguientes:

Mandar_nombre.php:

<?php
session_start();
$_SESSION['username']="Joe12345";
$_SESSION['authuser']=1;
?>
<HTML>
<HEAD>
   <TITLE>Find my Favourite Movie</TITLE>
</HEAD>
<BODY>
   <?php
      //echo "<a href='http://www.gasuco.com/pruebas_php/paso_variables/url/variables_url2.php?favmovie=Stripes'>";
      //echo "CLick here to see information about my favourite movie!";
      //echo "</a>";

      //OTRA FORMA
      $myfavmovie=urlencode("Life of Brian");
      echo "<a href='http://www.gasuco.com/pruebas_php/paso_variables/url/variables_url2.php?favmovie=$myfavmovie'>";
      echo "CLick here to see information about my favourite movie!";
      echo "</a>";
      
   ?>
</BODY>
</HTML>

Moviesite.php:

<?php
session_start();
$_SESSION['username']="Joe12345";
$_SESSION['authuser']=1;
?>
<HTML>
<HEAD>
   <TITLE>Find my Favourite Movie</TITLE>
</HEAD>
<BODY>
   <?php
      //echo "<a href='http://www.gasuco.com/pruebas_php/paso_variables/url/variables_url2.php?favmovie=Stripes'>";
      //echo "CLick here to see information about my favourite movie!";
      //echo "</a>";

      //OTRA FORMA
      $myfavmovie=urlencode("Life of Brian");
      echo "<a href='http://www.gasuco.com/pruebas_php/paso_variables/sesion/moviesite.php?favmovie=$myfavmovie'>";
      echo "CLick here to see information about my favourite movie!";
      echo "</a>";
      
   ?>
</BODY>
</HTML>

Me saltan los siguientes errores al lanzar el link:

Warning: session_start() [function.session-start]: open(/tmp/sesion_logs/sess_63f77cadda1def77fd5b2ca8305caf2c, O_RDWR) failed: Permission denied (13) in /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php:2) in /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php:2) in /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php on line 2
CLick here to see information about my favourite movie!
Warning: Unknown: open(/tmp/sesion_logs/sess_63f77cadda1def77fd5b2ca8305caf2c, O_RDWR) failed: Permission denied (13) in Unknown on line 0

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

Alguien sabe que me esta fallando??

ESpero vuestras respuestas.

Salu2

alzehimer_cerebral

Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com

coolfrog

coloca session_start() en la misma linea de " <?php "

alzehimer_cerebral

Gracias por la respuesta.

Pero nada sigue igual.

Estoy perdido la verdad...

SAlu2

alzehimer_cerebral
Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com

Red Mx

es un error comun al programar en php

session_start() no puedes usarlo despues de enviar HTML a la pagina es decir primero procesa de forma ordenada y logica tus datos y luego asi envia el HMTL
Desarrollar Malware Es Causa De Cancer...

alzehimer_cerebral

Okis, pero me podrias decir como deberia quedar el codigo para enetenderlo mejor...  Tampoco me queda muy claro.

Un salu2

alzehimer_cerebral
Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com

Noxors

prueba de poner esto en el de mandar nombre:

<?php session_start();?>

<?php
$_SESSION
['username']="Joe12345";
$_SESSION['authuser']=1;
?>

Hans el Topo

Cita de: Red Mx en 10 Julio 2008, 01:27 AM
es un error comun al programar en php

session_start() no puedes usarlo despues de enviar HTML a la pagina es decir primero procesa de forma ordenada y logica tus datos y luego asi envia el HMTL
Cita de: alzehimer_cerebral en 10 Julio 2008, 10:12 AM
Okis, pero me podrias decir como deberia quedar el codigo para enetenderlo mejor...  Tampoco me queda muy claro.

Un salu2

alzehimer_cerebral

si no eres capaz de entender lo que redmx te dice no te podemos ayudar en nada más
 

alzehimer_cerebral

Hans si te molestas en escribir por lo menos ponme que debo cambiar en el codigo, esa es la forma en la que me puedes ayudar.

Parece mentira yo si posteo es por ayudar o para preguntar dudas no para poner que no se puede ofrecer mas ayuda como haces tu.

El codigo php esta fuera de html y por lo tanto supongo que lo que me decis esta bien.

Nose, si os paetece ayudar hacerlo sino no posteis.

Eso es todo.

alzehimer_cerebral
Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com

Ertai

Nadie se ha mirado este linea del error?

Warning: session_start() [function.session-start]: open(/tmp/sesion_logs/sess_63f77cadda1def77fd5b2ca8305caf2c, O_RDWR) failed: Permission denied (13) in /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php on line 2

Comprueba los permisos de esa carpeta que has creado. Fijate que intenta leer y escribir (O_RDWR), por lo tanto dale permisos para que lo pueda hacer.

Los otros errores vienen en cadena.
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}

alzehimer_cerebral

#9
Gracias por la respuesta. He cambiado los permisos en la ruta de los archivos php y en la de los logs de sesion y me funciona.  Pero al tener esos directorios acceso completo no empeora la seguridad de la web??

Me dice que el permiso es denegado en la ruta /var/www/pruebas_php/paso_variables/sesion/mandar_nombre.php

No entiendo para que se necesita permisos en esa ruta??

No deberia tener permisos tan solo la ruta del php.ini, session.save_path = /tmp/sesion_logs??

Salu2

alzehimer_cerebral
Servicios Informaticos Valencia - www.ag-solutions.es
Mi blog - www.alvarogarciasolano.com