Foros del Web » Programando para Internet » PHP »

Problemas con fopen() y fwrite()

Estas en el tema de Problemas con fopen() y fwrite() en el foro de PHP en Foros del Web. Buenos dis compañeros ! Una vez mas acudiendo a sus conocimientos ! En esta oportunidad, he creado un CRM para un contact center, y , ...
  #1 (permalink)  
Antiguo 28/05/2010, 08:52
 
Fecha de Ingreso: marzo-2008
Mensajes: 25
Antigüedad: 16 años, 1 mes
Puntos: 0
Problemas con fopen() y fwrite()

Buenos dis compañeros !
Una vez mas acudiendo a sus conocimientos !
En esta oportunidad, he creado un CRM para un contact center, y , al momento de expoertar informes en EXCEL me va de p... madre ! Genero el archivo, lo abro, guardo los datos de la base en el excel y lo exporto y todo ! Hasta ahi , genial !
El problema se presenta en que, cuando la persona vuelve en pa pagina hacia atras, cambia las fechas de los reportes y pone"generar reporte" nuevamente, el excel que exporta sigue siendo el mismo ! Osea, no toma las nuevas fechas !!!
Les dejo parte del codigo aqui para ver si alguien me puede decir porque sigue levantando siempre el mismo excel y no toma los nuevos rangos de fecha para lanzar el nuevo reporte !

ESTE CODIGO ES EL QUE USO PARA ESCRIBIR EL ARCHIVO CON LOS DATOS
Código PHP:
Ver original
  1. $sfile="./Temporal/ConsultaListadoResultadosNovopen.xls"; //ruta del archivo a generar
  2. $fp=fopen($sfile,"w");
  3. fwrite($fp,$shtml);
  4. fclose($fp);

ESTE CODIGO ES EL QUE USO EN HTML PARA QUE DESCARGUEN EL ARCHIVO
Código HTML:
Ver original
  1. <p><? echo "<a href='".$sfile."'>Haz click aqui para descargar el informe</a>"; ?></p>

ESTOS SON LOS DATOS QUE RECIBO DE OTRA WEB, LOS CUALES USO PARA REALIZAR LA CONSULTA
Código PHP:
Ver original
  1. $fecha_des = $_POST['FechaDesde'];
  2. $date_des=FechaASQL($fecha_des);
  3. $date_des;
  4. $fecha_has = $_POST['FechaHasta'];
  5. $date_has = FechaASQL($fecha_has);
  6. $date_has;

Esto es todo lo que hago, pero , resulta, que cuando dan click en Descargar el informe, siempre les abre el mismo ! Hasta que no cierran el explorador, lo abren denuevo y tiran un nuevo informe, siempre les muestra el mismo ! Y es lo que no quiero !! Necesito que ellos modifiquen las fechas tantas veces como quieran y les lance el informe correspondiente !! Muchas gracias !!!!!!
  #2 (permalink)  
Antiguo 28/05/2010, 09:19
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problemas con fopen() y fwrite()

//no se si esto te serviria, y no se si lo haces

if(
$_POST['FechaDesde'] != "" &&
FechaASQL($fecha_des) != "" &&
$_POST['FechaHasta'] != "" &&
FechaASQL($fecha_has) != ""
)
{
//solo si esos valore tienen algun valor se cumpliria la condicion
}

Tambien, luego de usarlos, puedes vaciarlos:

$_POST['FechaDesde'] = "";
FechaASQL($fecha_des) = "";
$_POST['FechaHasta'] = "";
FechaASQL($fecha_has) = "";

Tambien un refresh, con header o html limpiaria las cabeceras de envios post.
  #3 (permalink)  
Antiguo 28/05/2010, 10:53
 
Fecha de Ingreso: marzo-2008
Mensajes: 25
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Problemas con fopen() y fwrite()

Gracias amigo , pero creo que el problema no esta alli.
Eso esta controlado en el formulario, no preciso controlarlo en el PHP.
El problema esta en que se genera el archivo excel en la carpeta temporal, el usuario lo abre, luego lo cierra y a traves del formulario ingresa un nuevo rango de fechas.
Cuando abre el nuevo excel, resulta que sigue siendo el mismo de la primer seleccion, me explico ?
  #4 (permalink)  
Antiguo 28/05/2010, 11:48
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problemas con fopen() y fwrite()

Sera ese problema tipico de la chache del navegador...

Podrias resolverlo asi...

Código PHP:

$sfile
="./Temporal/ConsultaListadoResultadosNovopen.xls?thisVar=".rand(1,100).""
Con algunas otras cosas funciona, como en un playlist xml generado con php.

Prueba no se...

Última edición por wiwi74; 28/05/2010 a las 11:54
  #5 (permalink)  
Antiguo 28/05/2010, 12:12
 
Fecha de Ingreso: marzo-2008
Mensajes: 25
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Problemas con fopen() y fwrite()

Eso que es lo que haria ? Borrar el archivo del cache una vez abierto o que ?
  #6 (permalink)  
Antiguo 28/05/2010, 14:13
Avatar de wiwi74  
Fecha de Ingreso: marzo-2008
Mensajes: 515
Antigüedad: 16 años, 1 mes
Puntos: 10
Respuesta: Problemas con fopen() y fwrite()

No, eso engaña al navegador...

Cuando tu realizas una peticion http el navegador lo primero que hara es buscar en la cache para no perder tiempo... Devolviendote un archivo (del mismo nombre) no actualizado...

Eso crea un numero aleatoreo que se suma a la url, haciendola asi (aunque sea la misma) diferente para el navegador. Por lo que el ira a buscarla al servidor, actualizada.

Utiliza esa url con lo que le agregue (tu no tienes que hacer nada mas, y ese agregado no afectara a tu sistema...

Pruebalo y comenta...
  #7 (permalink)  
Antiguo 19/04/2011, 11:48
 
Fecha de Ingreso: febrero-2010
Mensajes: 1
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problemas con fopen() y fwrite()

[URL="http://www.businesscontactcenters.com"]businesscontactcenters.com[/URL]

Etiquetas: fopen, fwrite
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 17:25.