Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapis stringa do pliku
Forum PHP.pl > Forum > PHP
lolkiewicz
Witam,

mam taki problem, że chce zapisać stringa do pliku ale plik ma być zapisany w miejscu zdefiniowanym przez użytkownika. Problem polega na tym, że do pliku nie trafia sam stringu tylko cały bufor co mnie w żaden sposób nie cieszy.
Teraz kawałek kodu
  1. $pk = string;
  2.  
  3. header("Content-Type: application/download");
  4. header("Content-Disposition: attachment; filename= privkey.pem");
  5. header("Content-Length: " . filesize($pk));
  6. $fp = fopen($pk, "rw");
  7. fpassthru($fp);


Chodzi o to, że do pliku trafia cała zawartość headera, a nie ten string, który ma trafić. Co robie nie tak ? Albo może ktoś ma jakąś lepszą metode wypracowaną jeśli chodzi o zapisywanie stringa do pliku.
lolkiewicz
A jakiś przykład użycia ? Bo w przypadku:

  1. header("Content-Type: application/download");
  2. header("Content-Disposition: attachment; filename= privkey.pem");
  3. file_put_contents('privkey.pem', $pk);


Wysypuje, że nie może otworzyć privkey.pem. Bo jak ma go otworzyć jak on nie istnieje. Plik ma być zapisany w miejscu gdzie użytkownik chce. A nie na sztywno ścieżka.
Turson
Cytat
If filename does not exist, the file is created.
lolkiewicz
Po pierwsze, ja nie mam problemu z zapisem do pliku tylko z zawartością pliku. Po drugie czytajcie ze zrozumieniem. Chce zapisać samego stringa, a nie cały content, który jest w headerze. Napisze jeszcze raz NIE MAM PROBLEMU Z ZAPISEM, A JEDYNIE Z ZAWARTOŚCIĄ ZAPISYWANEGO PLIKU !


@edit
Już sobie poradziłem, jakby ktoś miał kiedyś coś podobnego to wystarczy czyścić cały buffor przed zapisaem do pliku.
Kofel
Koledzy nie zrozumieliście autora tematu. wink.gif On chce, aby użytkownik odpalająć skrypt dostawał plik do pobrania.

@lolkiewicz:

  1. $pk = string;
  2.  
  3. header("Content-Type: application/download");
  4. header("Content-Disposition: attachment; filename= privkey.pem");
  5. header("Content-Length: " . filesize($pk));
  6. echo $pk;
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.