Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Zmiana nazwy pliku pobieranego
ithat
post 17.05.2013, 08:18:53
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 9.01.2013

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


Witam, mam problem ze zmiana nazwy pliku pobieranego z serwera. Mam plik export.csv na serwerze, pakuje do niego dane z serwera, a nastepnie go pobieram, wszystko dziala, tylko nie potrafie zmienic nazwy pliku pobieranego. O to kod :

  1. $wynik = mysql_query("SELECT * FROM baza_zamowienia WHERE klient = '{$_POST['dane']}'");
  2. $licznik = mysql_num_rows($wynik);
  3. }
  4. }
  5. $zapisz = fopen('eksport.csv', 'w');
  6.  
  7. while($r = mysql_fetch_object($wynik)) {
  8.  
  9. fwrite($zapisz, $r->sn.';'.$r->urzadzenie.';'.$r->zamowienie.';'.$r->klient.';'.$r->nr_faktury.';'.$r->data.";\n");
  10.  
  11. }
  12.  
  13. fclose($zapisz);
  14.  
  15. mysql_close($link);
  16. ?>
  17.  
  18. <meta HTTP-EQUIV="REFRESH" content="0; url=eksport.csv">

Próbowałem używać funkcji rename ale bez skutku. Jakies pomysly?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Sephirus
post 17.05.2013, 08:23:35
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Nie do końca wiem o co chodzi ale czy nie możesz po prostu zapisać go z inną nazwą?

  1. $zapisz = fopen('eksport.csv', 'w'); // tutaj i jej używać




--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
ithat
post 17.05.2013, 08:30:00
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 9.01.2013

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


W tym miejscu wskazuje na plik na serwerze, a nastepnie co z nim chce robic.
A w jaki sposob zapisac go pod inna nazwa?
Go to the top of the page
+Quote Post
nospor
post 17.05.2013, 08:31:40
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




facepalmxd.gif

$zapisz = fopen('innanazwa.csv', 'w');
...
<meta HTTP-EQUIV="REFRESH" content="0; url=innanazwa.csv">


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ithat
post 17.05.2013, 08:37:52
Post #5





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 9.01.2013

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


AAA faktycznie masz racje thx smile.gif
Go to the top of the page
+Quote Post
Sobak
post 17.05.2013, 09:21:22
Post #6





Grupa: Zarejestrowani
Postów: 21
Pomógł: 4
Dołączył: 26.04.2011
Skąd: Olsztyn

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


Samo meta refresh w tym wypadku też jest niezła prowizorką. Na Twoim miejscu zainteresowałbym się nagłówkami force download. Ten przykład powinien Ci pomóc:
  1. <?php
  2. $filename = 'test.doc';//wybieramy plik do ściągnięcia
  3. header('Content-Type:application/force-download');//ustawiamy mu uniwersalny typ mime (można bawić się w nadawanie mu application/msword, image/gif, itd...
  4. header('Content-Disposition: attachment; filename="'.basename($filename).'";');//tutaj podajemy nazwę pliku - domyślnie ustawiłem, aby plik nazywał się tak jak oryginał
  5. header('Content-Length:'.@filesize($filename));//dodajemy wielkość pliku
  6. @readfile($filename)or die('File not found.');//czytamy plik
  7. ?>


Ten post edytował Sobak 17.05.2013, 09:21:42
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 20:37