Foros del Web » Programando para Internet » PHP »

Crear archivo .rtf descargable

Estas en el tema de Crear archivo .rtf descargable en el foro de PHP en Foros del Web. Hola, Estoy utilizando esta funcion para crear un archivo rtf. file_put_contents("$codigo.rtf",$rtf); Sin embargo este codigo lo crea en la misma carpeta en que esta el ...
  #1 (permalink)  
Antiguo 21/10/2008, 09:23
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Crear archivo .rtf descargable

Hola,

Estoy utilizando esta funcion para crear un archivo rtf.

file_put_contents("$codigo.rtf",$rtf);

Sin embargo este codigo lo crea en la misma carpeta en que esta el archivo php.
Lo que yo quisiera es que este archivo se pueda descargar donde lo quiera el usuario. No se que tan posible sea esto, me imagino que si?.

Saludos.
  #2 (permalink)  
Antiguo 21/10/2008, 10:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear archivo .rtf descargable

Hola jasv,

Usa cabeceras como application/fore-download para forzar la descarga del documento y en lugar de usar file_put_contents imprimelo directo en el browser usando echo.

Saludos.
  #3 (permalink)  
Antiguo 22/10/2008, 09:10
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

Hola GastorV,


Gracias por la respuesta, pero me podrias poner un ejemplo, estoy algo perdido... Gracias.
  #4 (permalink)  
Antiguo 22/10/2008, 09:17
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Crear archivo .rtf descargable

Que tal jasv, mira la documentación de la función header() y sus ejemplos.




Saludos.
__________________
"SELECT * FROM Mujeres WHERE situacion NOT IN ('CASADAS','CON HIJOS','ATORMENTADAS','CUASI-ENNOVIADAS') AND personalidad <> 'INTENSA'"
  #5 (permalink)  
Antiguo 22/10/2008, 09:25
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

Hola Carlojas,

Gracias. Lo he visto, pero tengo una duda. La funcion que me crea el archivo rtf, es llamado desde una funcion de Ajax. Que tengo que tener en cuenta para esto? que cabeceras tengo que utilizar?

Gracias...
  #6 (permalink)  
Antiguo 22/10/2008, 09:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear archivo .rtf descargable

Hola jasv,

Desde AJAX no puedes forzar una descarga, si quieres simular ese proceso debes de usar un iframe oculto y ahi forzar la descarga.

Saludos.
  #7 (permalink)  
Antiguo 22/10/2008, 10:22
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

Hola,

mmm lo estoy viendo demasiado complicado, creo que me serviria si por defecto el archivo es guardado en el escritorio u otra carpeta del cliente, se puede hacer esto???

Gracias por sus colaboraciones.
  #8 (permalink)  
Antiguo 22/10/2008, 10:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear archivo .rtf descargable

Hola jasv,

Es imposible desde PHP escribir un archivo en el cliente, es una violación de seguridad y no lo puedes hacer.

Saludos.
  #9 (permalink)  
Antiguo 22/10/2008, 10:36
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

OK, ahora, quisiera intentar algo.
Este archivo .php que se ejecuta mediante ajax, lo llamo desde una funcion javascript. Este toma la respuesta del php.
Si retorno el archivo. No es posible tomar el archivo y descargarlo desde el javascript??

Perdon mi ignorancia, solo se me ocurre esta posibilidad.

Gracias por la colaboracion.
  #10 (permalink)  
Antiguo 22/10/2008, 10:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear archivo .rtf descargable

Hola jasv,

Lamentablemente no, Javascript no dispone de ninguna herramienta para descargar archivos, ya que se ejecuta en el ámbito del cliente en el HTML.

Saludos.
  #11 (permalink)  
Antiguo 22/10/2008, 10:52
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

Bueno, gracias por tu colaboracion.

Entonces me podrias guiar con lo iframe.
Donde lo hago? en el php que se llama cone ajax? en la funcion javascript que llama el archivo php? en que momento creo el iframe?

Perdona la molestia.
Gracias por todo.
  #12 (permalink)  
Antiguo 22/10/2008, 11:00
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Crear archivo .rtf descargable

Hola jasv,

Lo que haces es cambiar el target de tu función en lugar de ser una llamada AJAX, lo mandas llamar a tu iframe oculto.

Saludos.
  #13 (permalink)  
Antiguo 22/10/2008, 12:28
 
Fecha de Ingreso: julio-2008
Ubicación: Caldas, Antioquia, Colombia
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Crear archivo .rtf descargable

Hola GastorV,

Muchas gracias por tu colaboracio. Lo he resuelto con el iframe. muchas gracias.

Saludos.
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 08:25.