Foros del Web » Programando para Internet » PHP »

Error 500 del servidor al hacer session_start(); WTF?????

Estas en el tema de Error 500 del servidor al hacer session_start(); WTF????? en el foro de PHP en Foros del Web. Mi problema es que tengo un formulario, cuando le doy a enviar me envia a este php: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php session_start ...
  #1 (permalink)  
Antiguo 31/03/2012, 04:44
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Error 500 del servidor al hacer session_start(); WTF?????

Mi problema es que tengo un formulario, cuando le doy a enviar me envia a este php:
Código PHP:
Ver original
  1. <?php
  2.  require("php/config.php");
  3.  
  4.  //Envio a la empresa
  5. $Nombre=$_POST["nombre"];
  6. $Apellidos=$_POST["apellidos"];
  7. $Telefono=$_POST["telefono"];
  8. $Email=$_POST["email"];
  9. $mensaje1=$_POST["mensaje"];
  10.  
  11. $mensaje="Nombre...................... $Nombre\n";
  12. $mensaje.="Apellidos................... $Apellidos\n";
  13. $mensaje.="Telefono..................... $Telefono\n";
  14. $mensaje.="E-mail....................... $Email\n";
  15. $mensaje.="Mensaje................ $mensaje1\n";
  16.  
  17. //añadir el pedido
  18. //echo count($_SESSION['carrito']);
  19. $APedido=$_SESSION['carrito'];
  20. $pedido="Detalles pedido:\n";
  21. for($i=0;$i<count($APedido)-1;$i++)
  22. {
  23.    
  24.     $pedido.="Producto: ".$APedido[$i]->getNombre().
  25.     "\n Descripcion: ". $APedido[$i]->getDescripcion().
  26.     "\n Precio: ". $APedido[$i]->getPrecio().
  27.     "\n Unidades: ". $APedido[$i]->getOrden()."\n";
  28.  
  29. }
  30. $pedido.="Total: ".$_SESSION['totcarrito']." €.\n Un saludo.";
  31.  
  32.  
  33.  $mensaje.=$pedido;
  34.  mail($GLOBALS["EmailInfo"],"Contcto Web",$mensaje,"from:$Email");
  35.  
  36. //envio usuario
  37. $mensaje="Hemos recibido su pedido, en breve nos pondremos en contacto con usted.\n";
  38. $mensaje.=$pedido;
  39. mail($Email,"Contcto Web",$mensaje,"from:$Email");
  40. header("Location: PedidoEnviado.php");
  41. ?>

En localhost funciona correctamente, pero en el servidor cuando le doy a enviar al formulario, se carga el php y me devuelve esto:

Error del servidor
El sitio web ha detectado un error al recuperar la http://www.c.es/a/M_EmailPedido.php http://www.c.es/a/M_EmailPedido.php. Es posible que esta esté inactiva debido a tareas de mantenimiento o que se haya configurado de forma incorrecta.
A continuación se detallan algunas sugerencias:
Vuelve a cargar esta página más tarde.
Error de HTTP 500 (Internal Server Error): Se ha detectado una condición inesperada cuando el servidor intentaba atender la solicitud.

Si quito el session_start() funciona pero como necesito valores de la session (donde esta un array con objetos) no me vale... que puedo hacer????

Gracias un saludo!
  #2 (permalink)  
Antiguo 31/03/2012, 13:26
Avatar de ecarlevaro  
Fecha de Ingreso: octubre-2010
Ubicación: Paraná, Argentina
Mensajes: 80
Antigüedad: 14 años, 1 mes
Puntos: 13
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

¿Está habilitado el soporte para sesiones en tu servidor?.

Crea un archivo de PHP con el siguiente código
Código PHP:
Ver original
  1. <?php
  2. ?>
guardalo con el nombre phpinfo.php, subelo a tu servidor y ejecutalo. Fijate en la sección "session" si dice "Session support: enabled".
  #3 (permalink)  
Antiguo 01/04/2012, 03:41
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

claro que las sesiones estan soportadas, trabajo con ellas en toda la tienda y cuando hago el submit de un formulario para poder recojer los datos y ademas el pedido en session , simplmente me da este error. No obstante he subido el archivo y me devuelve :

session

Session Support enabled
Registered save handlers files user
Registered serializer handlers php php_binary wddx
  #4 (permalink)  
Antiguo 01/04/2012, 04:15
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

he hecho pruebas y el problema no es la session, sino que intento acceder a un metodo del objeto contenido en el array de objetos en session , vamos cuando hago:
$APedido=$_SESSION['carrito'];
$APedido[$i]->getNombre() dentro del for para obtener el nombre del producto ahi me da el error, y si hago un count:
count($_SESSION['carrito']); me devuelve correctamente un valor numerico que corresponde ccon el total de articulos del carrito.
Por que da erro al acceder al metodo del objeto ??? necesito un cast o algo similar??? en otras apginas php accedo a los objetos recuperando el array de objetos desde session y no me produce un error 500 del server... me parece extraño.

Gracias , espero comentarios ;)

Última edición por ferminako; 01/04/2012 a las 04:59
  #5 (permalink)  
Antiguo 01/04/2012, 09:53
Avatar de ecarlevaro  
Fecha de Ingreso: octubre-2010
Ubicación: Paraná, Argentina
Mensajes: 80
Antigüedad: 14 años, 1 mes
Puntos: 13
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

Muchas veces el error 500 se presenta por una directiva en los htaccess que genere conflicto.
Ahora por lo que dices, puede ser que esté generando un error en PHP esa intrucción con el método getNombre() pero que por la configuración del servidor el error PHP no se muestre en HTML sino que se genere un error tipo 500.

Busca en el server un archivo de log de errores (algo como error_log) puede que allí encuentre el error que genera PHP.
  #6 (permalink)  
Antiguo 01/04/2012, 13:16
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

Qué obtienes si haces esto:

var_dump($APedido);
__________________
- León, Guanajuato
- GV-Foto
  #7 (permalink)  
Antiguo 01/04/2012, 14:56
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

ecarlevero no encuentro el fichero, donde deberia buscar ?? porque dentro de httpdocs no veo nigun log...
Triby esto es lo que sale:

array(1) { [0]=> object(__PHP_Incomplete_Class)#1 (10) { ["__PHP_Incomplete_Class_Name"]=> string(8) "Articulo" ["Id":"Articulo":private]=> string(2) "12" ["Nombre":"Articulo":private]=> string(9) "Pantalon1" ["Descripcion":"Articulo":private]=> string(9) "pantalon1" ["Precio":"Articulo":private]=> string(1) "1" ["Orden":"Articulo":private]=> int(1) ["Familias_idFamilias":"Articulo":private]=> NULL ["Marcas_idMarcas":"Articulo":private]=> NULL ["Foto":"Articulo":private]=> NULL ["Fotos"]=> string(22) "images/items/foto1.jpg" } }

Por lo tanto el objeto esta en el array de la session, y por lo tanto deberia poder usar sus metodos como lo hago en cualquier otra parte de mi codigo no???
EN php no hay cast oa lgo asi?? es por buscar una posible solucion....

Gracias a todos!
  #8 (permalink)  
Antiguo 02/04/2012, 01:16
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

he hecho un apaño para poder seguir funcionando pero necesito entender por que no me funciona, por que el apaño es solo temporal... Gracias! :d
  #9 (permalink)  
Antiguo 02/04/2012, 01:34
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 8 meses
Puntos: 62
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

mira los logs
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #10 (permalink)  
Antiguo 02/04/2012, 02:22
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

No encuentro el log de errores, solo una carpeta llamada error_docs donde hay apginas para mostrar segun el error que suceda... donde se suele encontrar el log ???

Gracias.
  #11 (permalink)  
Antiguo 02/04/2012, 03:59
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 8 meses
Puntos: 62
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

en windows supongo que en la misma carpeta donde se encuentra el servidor web, por ejemplo en linux están en:

/var/log/apache2
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #12 (permalink)  
Antiguo 02/04/2012, 05:31
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Error 500 del servidor al hacer session_start(); WTF?????

Buenas a todos por fin lo encontre , por si alguien le sirve: /statics/logs/ y ahi esta...

He encontrado el error que me da y describe lo siguiente:

PHP Fatal error: main(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition "Articulo" of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in /var/www/vhosts/c.es/httpdocs/a/M_EmailPedido.php on line 25, referer: http://www.c.es/a/CarroCompra.php?id...o.jpg&accion=A

Etiquetas: 500, formulario, servidor, usuarios
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 01:59.