Foros del Web » Programando para Internet » PHP »

no se abre ni se guarda el archivo

Estas en el tema de no se abre ni se guarda el archivo en el foro de PHP en Foros del Web. buenos días amigos, trato de arrancar una aplicación opensource, y php es nuevo para mi. realizo una llamada: http://midominio.es/index.php?module=uploads&action= downloadfile &return_module=Documents&fileid=1243434&entityid=7 9945 el server es ...
  #1 (permalink)  
Antiguo 20/05/2010, 05:20
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 21 años, 9 meses
Puntos: 2
no se abre ni se guarda el archivo

buenos días amigos,

trato de arrancar una aplicación opensource, y php es nuevo para mi.

realizo una llamada:
http://midominio.es/index.php?module=uploads&action=downloadfile&return_module=Documents&fileid=1243434&entityid=7 9945

el server es w2008+IIS, y la carpeta donde se encuentra el archivo a descargar tiene permisos modificación+lectura+ejecución+escritura,
el código del archivo en cuestión (downloadfile.php):

<?php
require_once('config.php');
require_once('include/database/PearDatabase.php');
global $adb;
global $fileId, $default_charset, $app_strings;
$attachmentsid = $_REQUEST['fileid'];
$entityid = $_REQUEST['entityid'];
$returnmodule=$_REQUEST['return_module'];
$deletecheck = false;
if(!empty($entityid)) $deletecheck = $adb->pquery("SELECT deleted FROM vtiger_crmentity WHERE crmid=?", array($entityid));

if(!empty($deletecheck) && $adb->query_result($deletecheck, 0, 'deleted') == 1)
{echo $app_strings['LBL_RECORD_DELETE'];}

else {
$dbQuery = "SELECT * FROM vtiger_attachments WHERE attachmentsid = ?" ;
$result = $adb->pquery($dbQuery, array($attachmentsid)) or die("Couldn't get file list");
if($adb->num_rows($result) == 1)
{
$fileType = @$adb->query_result($result, 0, "type");
$name = @$adb->query_result($result, 0, "name");
$filepath = @$adb->query_result($result, 0, "path");
$name = html_entity_decode($name, ENT_QUOTES, $default_charset);
$saved_filename = $attachmentsid."_".$name;
$disk_file_size = filesize($filepath.$saved_filename);
$filesize = $disk_file_size + ($disk_file_size % 1024);
$fileContent = fread(fopen($filepath.$saved_filename, "r"), $filesize);

header("Content-type: $fileType");
header("Content-length: $filesize");
header("Cache-Control: private");
header("Content-Disposition: attachment; filename=$name");
header("Content-Description: PHP Generated Data");
echo $fileContent;
}
else
{
echo $app_strings['LBL_RECORD_NOT_FOUND'];
}
}
?>
  #2 (permalink)  
Antiguo 20/05/2010, 07:07
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: no se abre ni se guarda el archivo

¿Y que error te marca especificamente?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 20/05/2010, 12:55
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 21 años, 9 meses
Puntos: 2
Respuesta: no se abre ni se guarda el archivo

después de una larga espera,
que IE no puede descargar o abrir,

lo he solucionado,

comentando:
// header("Content-length: $filesize");

añadiendo:
header ("Pragma:public");

un saludo,
josé carlos.

Etiquetas: Ninguno
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 22:06.