Foros del Web » Programando para Internet » PHP »

pasar datos Mysql a excel en php

Estas en el tema de pasar datos Mysql a excel en php en el foro de PHP en Foros del Web. Hola tengo un php que pasa los datos de mysql a excel. Mi escriot funciona perfectamente en el servidor de mi equipo(localhost) pero al subirlo ...
  #1 (permalink)  
Antiguo 09/02/2010, 08:35
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
pasar datos Mysql a excel en php

Hola tengo un php que pasa los datos de mysql a excel.
Mi escriot funciona perfectamente en el servidor de mi equipo(localhost) pero al subirlo al servidor en internet no me funciona y quisiera saver si alguien me podria decir cual puede ser el problema, aqui dejo el script

<?
extract($_POST);
if ($esta !=""){
$conexion = mysql_connect ("mysql8.000webhost.com", "a2513911_esta", "admin01")
or die ("No se puede conectar con el servidor");
$selec=mysql_select_db ("a2513911_esta")
or die ("No se puede seleccionar la base de datos");
$esta2=($esta);
$sql = "SELECT * INTO OUTFILE '$esta' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\n' FROM estadicas;";

$res=mysql_query ($sql,$conexion) or die ("Renombra el archivo para generar uno nuevo");

echo ("Datos de formulario pasado a excel correctamente. \n");

}

?>
  #2 (permalink)  
Antiguo 09/02/2010, 08:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: pasar datos Mysql a excel en php

Problemas de los límites de MySQL y de permisos:
Según el manual de referencia:
Cita:
La forma SELECT ... INTO OUTFILE 'file_name' de SELECT escribe los registros seleccionados en un fichero. El fichero se crea en el equipo servidor, así que debe tener el permiso FILE para usar esta sintaxis. El fichero no puede existir, que entre otras cosas evita destruir ficheros cruciales tales como /etc/passwd y tablas de la base de datos.

El comando SELECT ... INTO OUTFILE existe principalmente para dejarle volcar una tabla rápidamente en la máquina servidor. Si quiere crear el fichero resultante en un equipo cliente distinto al equipo servidor, no puede usar SELECT ... INTO OUTFILE. En tal caso, debería usar algún comando como mysql -e "SELECT ..." > file_name en el equipo cliente para generar el fichero.
Lo último quiere decir que debe hacerse desde el sistema operativo y no desde una página web o bien una aplicación de escritorio.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 09/02/2010, 09:03
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: pasar datos Mysql a excel en php

gracias por responder, pero para que lo cree en la carpeta del servidor tampoco me lo hace sera por lo de los permisos como puedo cambiar esos permisos?
  #4 (permalink)  
Antiguo 09/02/2010, 11:13
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: pasar datos Mysql a excel en php

Cita:
Iniciado por kai89 Ver Mensaje
gracias por responder, pero para que lo cree en la carpeta del servidor tampoco me lo hace sera por lo de los permisos como puedo cambiar esos permisos?
El que te lo genere en la carpeta de servidor no te será de utilidad a menos que tu tengas permisos como usuario remoto para recuperar ese archivo por fuera de MySQL. Es decir, que puedas acceder a los recursos de FTP del servidor, o bien que tengas permisos de lectura/escritura sobre la carpeta de la web en la que trabaja.

Los permisos de usuario de MySQL son asunto del root, es decir del administrador de MySQL. Es el root o bien un usuario de alto nivel con GRANT OPTION habilitado quien puede otorgar permisos de FILE a un usuario.
El tema pasa por cuestiones de seguridad de bases de datos. Esos permisos no se suelen dar así nomás en los hosting, por más que te den un usuario que pueda crear usuarios para tu base.
Lo tendrás que tratar con quien administra la base en el servidor.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: excel, mysql, pasar
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 10:31.