Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Download plików poprzez stronę - problem
djbit
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Witam, mam taki skrypt:
  1. <?php
  2.  
  3. header('Content-Disposition: attachment; filename=tekst.txt');
  4. header('Content-Type: application/txt');
  5.  
  6.  
  7. readfile('tekst.txt');
  8.  
  9. ?>


Plik "tekst.txt" mam na kompie i zawiera on kilka akapitów.
Jednak po ściągnięciu pliku ze strony przez powyższy skrypt akapity się tracą.
Tekst w notatniku jest bez akapitów, całość tekstu jest w jednej linijce, ale jak otworze ten ściągnięty plik np w wordzie to akapity są tak jak tekst był w oryginale.

Nie wiem o co tu chodzi.


Może macie jakiś pomysł.

Ten post edytował djbit 31.01.2011, 14:40:38
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




WTF?
  1. header('Content-Type: application/txt');


Użyj
  1. header('Content-Type: text/plain');

Go to the top of the page
+Quote Post
djbit
post
Post #3





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Dzięki za odpowiedź, ale to nie pomogło.

W Notepad ++ i w wordzie otwiera się bez problemów, a w notatniku wszystko w jednej linijce.
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Bo notatnik jest głupi nie rozumie, że samo "\n" to jest nowa linia (w notacji linuxowej). Notatnik potrzebuje jeszcze znaku "\r" przed końcem linii także takie coś po prostu olej.
Go to the top of the page
+Quote Post
djbit
post
Post #5





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Raczej bym potrzebował, aby otwierało się to poprawnie w notatniku.
Może ma ktoś jakiś sposób?
Go to the top of the page
+Quote Post
sadistic_son
post
Post #6





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Masz wyżej przecież podaną odpowiedź...
Cytat(wookieb @ 31.01.2011, 15:28:53 ) *
Notatnik potrzebuje jeszcze znaku "\r" przed końcem linii (...)
Pododawaj \r przed końcem każdej linii i będzie działać.
Go to the top of the page
+Quote Post
wookieb
post
Post #7





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




W takim razie na treści pliku musisz zrobić coś takiego
  1. $text = str_replace("\n", "\r\n", $text);

No i ten tekst wypluwasz.
Go to the top of the page
+Quote Post
djbit
post
Post #8





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Jak dodam na końcu linie "\r", to po otwarciu pliku tekstowego te "\r" dalej widać i nic się nie dzieje - dalej w jednej linii.



  1. $text = str_replace("\n", "\r\n", $text);


wstawiłem do tego:

  1.  
  2. <?php
  3. $text = str_replace("\n", "\r\n", $text);
  4. header('Content-Disposition: attachment; filename=tekst.txt');
  5. header('Content-Type: application/txt');
  6. readfile('tekst.txt');
  7. ?>
  8.  


i też nie działa, chyba, że coś źle robie
Go to the top of the page
+Quote Post
wookieb
post
Post #9





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Czego nie rozumiesz w słowach?
Cytat
W takim razie na treści pliku musisz zrobić coś takiego
Go to the top of the page
+Quote Post
djbit
post
Post #10





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Nie rozumiem właśnie tego "na treści pliku"


w notatniku mam przykładowo napisane:

"Przykładowa treść
Przykładowa treść
Przykładowa treść"



gdzie mam to wstawić
  1. $text = str_replace("\n", "\r\n", $text);


co rozumiesz przez "na treści"
w treści umieściłem, ale wyświetla się to jak zwykły tekst
Go to the top of the page
+Quote Post
wookieb
post
Post #11





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Treść = zawartość pliku. Taki "synonim".
Pobierasz treść pliku i na niej wykonujesz str_replace
Go to the top of the page
+Quote Post
djbit
post
Post #12





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 10.01.2009

Ostrzeżenie: (0%)
-----


Jakbyś mi to dokładniej opisał byłbym wdzięczny - php niestety nie znam i nie wiem o co biega (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
wookieb
post
Post #13





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Nie.
file_get_contents
Nie dajemy gotowców.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 21:34