Foros del Web » Programando para Internet » PHP »

Excel - Spreadsheet_Excel_Writer

Estas en el tema de Excel - Spreadsheet_Excel_Writer en el foro de PHP en Foros del Web. Hola a todos. Estoy intentando usar alguna clase completa para exportación de datos en formato excel y en el futuro poder personalizar visualmente dicha exportación. ...
  #1 (permalink)  
Antiguo 17/03/2011, 14:50
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Excel - Spreadsheet_Excel_Writer

Hola a todos.

Estoy intentando usar alguna clase completa para exportación de datos en formato excel y en el futuro poder personalizar visualmente dicha exportación.

Encontré esta extensión o paquete: Spreadsheet_Excel_Writer

La cuestión es que instalo dicho paquete según lo indicado aquí: http://pear.php.net/package/Spreadsh...riter/download


Tras instalarlo, hago una ejecución simplemente incluyendo la librería:

Código PHP:
require_once 'Spreadsheet/Excel/Writer.php'
Y me retorna el siguiente error:

Cita:
Fatal error: require_once() [function.require]: Failed opening required 'Spreadsheet/Excel/Writer.php' (include_path='/usr/share/pear/.:')
Por si acaso es por la variable de inclusión de ficheros, la he redefinido (antes de la inclusión de la librería):

Código PHP:
    ini_set('include_path'"/usr/share/pear" DIRECTORY_SEPARATOR ini_get("include_path")); 
He revisado en mi servidor (Linux) la ruta /usr/share/pear/ y está dentro la correspondiente estructura de Spreadsheet/Excel/ incluyendo el fichero Writer.php

¿Porqué puede ser este problema? ¿alguien puede echarme una mano?


Gracias y un saludo.

Javier
  #2 (permalink)  
Antiguo 17/03/2011, 15:27
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 10 meses
Puntos: 394
Respuesta: Excel - Spreadsheet_Excel_Writer

intentaste colocándole los parentesis ?

require_once('Spreadsheet/Excel/Writer.php');
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #3 (permalink)  
Antiguo 17/03/2011, 15:43
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

Si, se los he puesto, y sigue sin funcionar...
  #4 (permalink)  
Antiguo 17/03/2011, 16:10
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Excel - Spreadsheet_Excel_Writer

Si el path es correcto deberías comprobar los permisos de las carpetas y ficheros.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 17/03/2011, 16:12
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Excel - Spreadsheet_Excel_Writer

Estas seguro que esa es la ruta correcta el repositorio de PEAR?

Saludos.
  #6 (permalink)  
Antiguo 17/03/2011, 16:21
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

Cita:
Iniciado por masterpuppet
Si el path es correcto deberías comprobar los permisos de las carpetas y ficheros.
¿Qué chmod debería darle a dicha carpeta y subcarpetas para que tenga los permisos correctos?


Cita:
Iniciado por GatorV
Estas seguro que esa es la ruta correcta el repositorio de PEAR?
Yo en esa ruta /usr/share/pear/ veo la carpeta Spreadsheet y sus interiores...

Espero vuestra ayuda y MIL GRACIAS!!

Javier
  #7 (permalink)  
Antiguo 17/03/2011, 16:30
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Excel - Spreadsheet_Excel_Writer

Si estas comenzando, te recomiendo phpexcel de codeplex es una librería muy buena.
PHPExcel

Saludos
Aquí tengo una rutina que exporta/importa de excel a Mysql con dicha librería (DEAME3P)
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp
  #8 (permalink)  
Antiguo 17/03/2011, 16:34
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Excel - Spreadsheet_Excel_Writer

755 para carpetas 644 para ficheros debería servir, te dejo los comandos, si no recuerdo mal era algo asi:

Código SHELL:
Ver original
  1. find . -type f -exec chmod 644 {} \;
  2. find . -type d -exec chmod 755 {} \;

Estas lineas se ejecutan dentro de la carpeta Spreadsheet.
__________________
http://es.phptherightway.com/
thats us riders :)
  #9 (permalink)  
Antiguo 18/03/2011, 03:22
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

Hola.

He puesto los permisos tal y como indicábais, y no me ha funcionado...

Os cuento...

- En la ruta especificada /usr/share/pear está la estructura de carpetas correctas.
- Si me llevo la carpeta Spreadsheet y su contenido a la estructura de mi proyecto, incluye bien el fichero writer.php pero me da el mensaje siguiente:
Cita:
Failed opening required 'PEAR.php' (include_path='/usr/share/pear')
Igual, sigue siendo por las RUTAS.

Si hago un phpinfo(); tengo:

Cita:


¿Veis algo mal por lo que no se me estén incluyendo los ficheros correctamente? ¿alguna solución que se os ocurra?

Gracias y un saludo.

Javier
  #10 (permalink)  
Antiguo 18/03/2011, 05:23
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Excel - Spreadsheet_Excel_Writer

si haces el require con la ruta absoluta funciona correctamente ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #11 (permalink)  
Antiguo 18/03/2011, 05:27
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

Acabo de probar con la ruta completa:
Código PHP:
require_once('/usr/share/pear/Spreadsheet/Excel/Writer.php'); 
Y sigue dando el mismo error.

Cita:
Fatal error: require_once() [function.require]: Failed opening required '/usr/share/pear/Spreadsheet/Excel/Writer.php' (include_path='/usr/share/pear/') in /var/www/vhosts/domain.com/httpdocs/blog/suscriptoras_exportToExcel.php on line 39
He probado a poner en consola vi /usr/share/pear/Spreadsheet/Excel/Writer.php y me lo edita a la perfección, por lo que la ruta es 100% correcta..

A ver si a alguien se le ocurre porqué puede ser el problema...

Javier
  #12 (permalink)  
Antiguo 18/03/2011, 10:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Excel - Spreadsheet_Excel_Writer

Puede ser que los archivos que estén ahí pertenezcan a otro usuario y el usuario bajo el que esta corriendo apache/php no tiene acceso a esos archivos...
  #13 (permalink)  
Antiguo 18/03/2011, 10:54
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

GatorV me parece perfecto esto que planteas!!!

¿cómo puedo saber si PEAR y el paquete de Excel han sido instalados con el mismo ID de usuario?

Y en el caso de ser distintos... ¿cómo puedo hacer para que sean iguales y lo pueda ejecutar también el usuario Web?

Gracias y un saludo!!

Javier
  #14 (permalink)  
Antiguo 18/03/2011, 11:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Excel - Spreadsheet_Excel_Writer

Con un ls -l te muestra el grupo y owner, con un chown cambias el owner.

Saludos.
  #15 (permalink)  
Antiguo 18/03/2011, 11:26
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

Si vale de algo saco esta exportación al hacer un LS:

Código PHP:
 4 drwxr-xr-x 16 root root  4096 Mar 18 01:54 .
 
4 drwxr-xr-x 54 root root  4096 Mar 17  2010 ..
 
4 drwxr-xr-x  3 root root  4096 Mar 17  2010 .channels
 4 
-rw-r--r--  1 root root  2724 Mar 17 13:25 .depdb
 0 
-rw-r--r--  1 root root     0 May  4  2007 .depdblock
12 
-rw-r--r--  1 root root  9422 Mar 17 13:25 .filemap
 0 
-rw-r--r--  1 root root     0 May  4  2007 .lock
 4 drwxr
-xr-x  2 root root  4096 May  4  2007 .pkgxml
 4 drwxr
-xr-x  4 root root  4096 Mar 17 13:25 .registry
 4 drwxr
-xr-x  2 root root  4096 Mar 17 13:25 Archive
 4 drwxr
-xr-x  2 root root  4096 Mar 17 13:25 Console
 4 drwxr
-xr-x  3 root root  4096 Mar 17 12:10 OLE
20 
-rw-r--r--  1 root root 18029 Mar 17 12:10 OLE.php
 4 drwxr
-xr-x  2 root root  4096 Mar 17 13:25 OS
 4 drwxr
-xr-x 11 root root  4096 Mar 17 13:25 PEAR
36 
-rw-r--r--  1 root root 33897 Mar 17 13:25 PEAR.php
 4 
-rw-r--r--  1 root root  1087 Mar 17 13:25 PEAR5.php
 4 drwxr
-xr-x  3 root root  4096 Mar 17 12:10 Spreadsheet
 4 drwxr
-xr-x  3 root root  4096 Mar 17 13:25 Structures
20 
-rw-r--r--  1 root root 19967 Mar 17 13:25 System.php
 4 drwxr
-xr-x  3 root root  4096 Mar 17 13:25 XML
 4 drwxr
-xr-x  2 root root  4096 Mar 17 13:25 data
 4 drwxr
-xr-x  4 root root  4096 Mar 17 13:25 doc
 4 
-rw-r--r--  1 root root    35 Mar 18 01:54 hola.php
16 
-rw-r--r--  1 root root 14430 Mar 17 13:25 pearcmd.php
 4 
-rw-r--r--  1 root root   928 Mar 17 13:25 peclcmd.php
 4 drwxr
-xr-x  4 root root  4096 Mar 17  2010 test 

Que yo vea, la carpeta Spreadsheet tiene como usuario root y grupo root, pero como todas las aplicaciones pear que hay dentro de la carpeta pear....

¿Habría que darle otro usuario y grupo para que se pueda ejecutar desde online?

Si hago un LS de alguna carpeta Web tengo:

Código PHP:
4 drwxr-x---  5 ftp.epromoda psaserv 4096 Mar  9 09:32 .
4 drwxr-xr-x 20 root         root    4096 Mar  9 09:22 ..
4 drwxr-xr-x  7 ftp.epromoda psacln  4096 Mar  9 09:23 _mediatemple
4 drwxr
-xr-x 12 ftp.epromoda psacln  4096 Mar 18 02:20 blog
4 drwxr
-xr-x  2 ftp.epromoda psacln  4096 Mar  9 09:22 plesk-stat 
Javier
  #16 (permalink)  
Antiguo 18/03/2011, 11:41
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: Excel - Spreadsheet_Excel_Writer

Tenes la directiva open_basedir activa, en teoria solo vas a poder abrir ficheros que esten bajo esa carpeta , te dejo un link a ver si con es lo podes solventar el problema.
__________________
http://es.phptherightway.com/
thats us riders :)
  #17 (permalink)  
Antiguo 18/03/2011, 12:31
Avatar de el_javi  
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 19 años
Puntos: 10
Respuesta: Excel - Spreadsheet_Excel_Writer

masterpuppet
Muchas gracias por tu ayuda!!!
Esto ha sido lo que me ha solucionado el problema!!!!

Un saludo.

Javier

Etiquetas: excel
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 04:06.