Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Konwersja danych z bazy do pliku *.txt
manhunto
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.10.2011

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


Witam,
Mam daną w bazie MySQL -treść- (TEXT) i chciałbym zrobić taką konwersję, że po kliknięciu w link na stronie, skrypt jakoś prze konwertuje to w taki sposób aby uruchomiło się pobieranie pliku w formacie np *.txt (lub innym) zawierający właśnie -treść- rekordu z pola TEXT.
Jest takie coś możliwe przy użyciu PHP + MySQL lub czy jest to w ogóle możliwe?
Jeśli tak to proszę o naprowadzenie.
Pozdrawiam

Ten post edytował manhunto 7.06.2012, 13:21:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
bobo1
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 7.03.2008

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


Tak jest to możliwe.

1. W pierwszej kolejności wybierasz wszystkie rekordy z danej tabeli, czyli SELEC * FROM table
2. Następnie zapisujesz te dane do pliku.
  1. $handle=fopen("plik.txt", "w+");
  2. $sql = "SELECT * FROM table";
  3. $rezultat = mysql_query($sql) or die('Nie można wykonać zapytania!');
  4. while ($lista = mysql_fetch_array($rezultat)) {
  5. fwrite($handle,''.$lista['Komórka1'].';'.$lista['Komórka2'].' ') ;
  6. }


Operacje należy powtórzyć dla tabel, które chcesz wyeksportować.
Go to the top of the page
+Quote Post
konrados
post
Post #3





Grupa: Zarejestrowani
Postów: 623
Pomógł: 79
Dołączył: 16.01.2008

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


Można prościej, z użyciem header, łap: http://webdesign.about.com/od/php/ht/force_download.htm
Go to the top of the page
+Quote Post
manhunto
post
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 12.10.2011

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


Dzięki za pomoc!
Z połączenia tych dwóch skryptów otrzymałem coś takiego:
  1. function downloadText($id, $syntax="txt")
  2. {
  3. db_connect(); //połączenie z bazą
  4. $handle = fopen($id.".".$syntax, "w+");
  5. $query = "SELECT text FROM magazyn WHERE id=".$id;
  6. $result = mysql_query($query);
  7. $row = mysql_fetch_assoc($result);
  8. $text = $row["text"];
  9. fwrite($handle,''.$text);
  10.  
  11. header("Content-disposition: attachment; filename=".$id.".".$syntax);
  12. header("Content-type: application/".$syntax);
  13. readfile($id.".".$syntax);
  14.  
  15. unlink($id.".".$syntax);
  16. }
po tej całej operacji chciałbym usunąć ten plik, ponieważ chce by był on utworzony tymczasowo i zaraz po tej operacji usunięty. unlink($id.".".$syntax); za readfile($id.".".$syntax); nie działa.

EDIT:
Już sobie poradziłem. Wystarczyło zamknąć plik. Po fwrite dać fclose.
Otrzymałem to czego oczekiwałem, dzięki za pomoc. Pozdrawiam!

Ten post edytował manhunto 7.06.2012, 14:58:59
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: 22.08.2025 - 21:59