Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Eksportuj rekordy w pliku Excel

Nie ma potrzeby pobierania zewnętrznych bibliotek - wszystko, czego potrzebujesz, jest już wbudowane w PHP.

Kroki:

  1. Wykonaj zapytanie w php, aby uzyskać wiersze, które chcesz wyprowadzić
    Możesz użyć SELECT * FROM table WHERE id IN (1,2,...)
  2. Użyj mysql_fetch_array() lub mysql_fetch_assoc() aby uzyskać rzędy pojedynczo
  3. Użyj fputcsv() wyprowadzić je do pliku kończącego się na csv - spowoduje to prawidłowe uniknięcie danych

http://www.php.net/manual/en /function.mysql-fetch-array.php
http://php.net/manual/en/function.fputcsv .php

Excel będzie mógł odczytać plik.

Zastąp ustawienia domyślne dla fputcsv aby używać tabulatorów jako ograniczników, a Excel będzie miał jeszcze łatwiejszy czas na czytanie pliku. Jeśli używasz przecinków (domyślnie), może być konieczne wybranie przecinków jako separatora podczas importu programu Excel.

Oto działający przykład zakładając, że masz już skonfigurowane wiersze:

$rows; // predefined
$filename = 'webdata_' . date('Ymd') . '.csv';

header("Content-Disposition: attachment; filename=\"$filename\"");
header("Content-Type: application/octet-stream"); 
// that indicates it is binary so the OS won't mess with the filename
// should work for all attachments, not just excel

$out = fopen("php://output", 'w');  // write directly to php output, not to a file
foreach($rows as $row)
{
  fputcsv($out, $row);
}
fclose($out);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Minimalna odległość i grupuj według

  2. Architektura parsowania i przetwarzania wiadomości e-mail

  3. Dołącz do podzapytania z doktryną 2 DBAL

  4. Rejestruj każde zapytanie MySQL w pliku, włączając opcję Logowanie ogólne w MAMP

  5. Jak usunąć wiele wierszy z bazy mysql za pomocą pola wyboru za pomocą PHP?