Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/11/2004, 06:26
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Sobre tus problemas:

1) .. Tan sólo haces un "location" para indicar a tu navegador que "redireccione" a tu documento.doc .. eso es lo mismo que hacer un:

http://www.tal.ta/documento.doc directamente ..

No deberías (o no es necesario) crear el archivo físicamente en tu servidor para luego tomar su ruta y "redireccionar" al navegador para que simule un "link" manual ... Lo que deberías hacer es generar las cabeceras HTTP adecuadas para indicar al navegador que los datos que vas a enviarles (y que has generádo dinámicamente) son para que los descargue.

Eso lo define el protocolo HTTP y sus cabeceras adecuadas. Desde PHP puedes "lanzar" cabeceras HTTP con la función header().

En tu caso se trataría de
Código PHP:
<?
// proceso para generar tus datos ...

// componer tus cabeceras HTTP para indicar que esos datos son para descargar.
header("cabecearas HTTP adecuadas");
// enviar tu dato generado al buffer de salida ..
echo $tu_doc_generado;
?>
más info:
www.php.net/header

2) .. Realmente no estás generando un documento .doc (de MS Word) "legítimo" pues no le das ningún formato en especial .. (por lo menos en el ejemplo que distes).

Podrías generar tu resultado en "HTML" .. respetando los tag's de HTML como corresponde para darle la estructura y disposición de elementos en tu página (sin más control sobre la página .. ni orientación .. ni margenes .. ni tamaños de página .. N.a.d.a.). Ese "HTML" depende de la versión de "Word" lo interpreta mejor o peor .. Word 2000 en adelante parece hacerlo mejor que Word 97 por ejemplo .. pero eso ya no depende de PHP ni del HTML que generas sino de Word en sí.

Consejos:
1) ¿ Por qué no generas un documento PDF ? .. es lo más standar que hay y donde realmente desde PHP puedes generar un documento para "imprimir" correctamente con toda la definición de la página .. tipografía .. etc que necesites. (Funciona en windows y linux .. no es necesario instalar ninguna extensión adicional en el servidor, puedes usar "classes" como por ejemplo R&OS, FPDF .. para generarlo).

2) .. Si usas PHP bajo windows .. podrías usar COM (www.php.net/com) para generar un documento realmente "Word" con todas las opciones de este

Un saludo,