Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Zapis tablicy do pliku lokalnego
Forum PHP.pl > Forum > Przedszkole
marcink72
witam
czy i w jaki sposób można zapisać dane z tabeli (tablicy) do pliku lokalnego (u klienta). strona wraz bazą znajduje się na serwerze (pewnie linux) natomiast do strony dostęp będzie miało kilkanascie osób osób które dane wprowadzają lub przeglądają. dla tych przeglądających chciałbym dać możliwość podglądu za pomocą www oraz w tle możliwość zapisu na dysku lokalnym a potem ewnetualny import do excela. zrobiłem tak własnie ale z zapisem pliku na serwerze a nie chciałbym uczyć i dawać możliwość łączxenia sie z ftp
AxZx
daj linka poprostu do tego pliku ktory zapisales na serwerze.

albo skorzystaj z takiej funkcji
  1. <?php
  2. function pobierz_header($plik, $nazwa_oryginalna){
  3. //DIR_PLIKI - katalog w ktorym zapisane sa pliki
  4. $now = gmdate('D, d M Y H:i:s') . ' GMT';
  5. $mime_type = (przegladarka() == 'IE' || przegladarka() == 'OPERA')
  6.  ? 'application/octetstream'
  7.  : 'application/octet-stream';
  8.  
  9.  
  10. //wysylanie danych do zapisu na dysku
  11. header('Content-Type: '.$mime_type.'; charset=utf-8');
  12. header('Expires: ' . $now);
  13.  
  14. header("Content-Length: " . (string)(filesize(DIR_PLIKI.'/'.$plik)) );
  15. header("Content-Transfer-Encoding: Binary"); 
  16.  
  17. // lem9 & loic1: IE need specific headers
  18. if ($this->przegladarka() == 'IE') {
  19. header('Content-Disposition: inline; filename="' .$nazwa_oryginalna. '"');
  20. header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  21. header('Pragma: public');
  22. }else{
  23. header('Content-Disposition: attachment; filename="' .$nazwa_oryginalna. '"');
  24. header('Pragma: no-cache');
  25. }
  26.  
  27. if($file = fopen(DIR_PLIKI.'/'.$plik, 'rb')) {
  28. while(!feof($file) and (connection_status()==0)) {
  29. print(fread($file, 1024*8));
  30. flush();  
  31. }
  32. fclose($file);
  33. }
  34.  
  35. }#koniec pobierz_header
  36. ?>

funkcja przegladarka, ktora sprawdza z jakiej przegladarki korzysta pobierajacy plik
  1. <?php
  2. function przegladarka(){
  3.  
  4. $przegladarka = '';
  5. if(ereg('Opera(/| )([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'], $log_version)){ $przegladarka = 'OPERA';
  6. }elseif(ereg('MSIE ([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'], $log_version)){ $przegladarka = 'IE';
  7. }elseif(ereg('OmniWeb/([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'], $log_version)){ $przegladarka = 'OMNIWEB';
  8. }elseif(ereg('Mozilla/([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'], $log_version)){ $przegladarka = 'MOZILLA';
  9. }elseif(ereg('Konqueror/([0-9].[0-9]{1,2})', $_SERVER['HTTP_USER_AGENT'], $log_version)){ $przegladarka = 'KONQUEROR';
  10. }  
  11. return $przegladarka;
  12.  
  13. }#koniec przegladarka
  14. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.