it-swarm.com.de

Wie kann ich Tabelleninhalte nach Excel oder CSV exportieren?

Ich benutze drupal 6, ich habe eine Tabelle mit erstellt

$tableHeader = array (     
  array('data' => 'Ebooks','field' => 'etitle'),
  array('data' => 'Volumes','field' => 'Volume' ),        
  array('data' => 'Chapter','field' => 'ctitle'),
  array('data' => 'Total Sale'),
);

$TableRows[] = array (
  l($row->etitle,$ebookinfo),
  $row->name,                              
  str_replace("&", "&" ,$row->ctitle ),                             
  round($row->totalsale,2).' $',
); 

$output .= theme('table', $tableHeader, $TableRows);// get the pager
$output .= theme('pager', NULL, 5, 0);

Wie kann ich es nach MS Excel oder CSV exportieren?

5
Sanjay dev

Möge der unten stehende benutzerdefinierte Code für Sie hilfreich sein.

setzen Sie den Header

$filename= 'export.csv';
  drupal_set_header('Content-Type: text/csv');
  drupal_set_header('Content-Disposition: attachment; filename=' . $filename);

sie können eine Funktion schreiben (nur ein Beispiel unten), indem Sie die Zeilenwerte, den Dateinamen und den Spaltentitel senden

<?php


function export_to_Excel_page($row_array, $filename,$column_titles) {

  drupal_set_header('Content-Type: text/csv');
  drupal_set_header('Content-Disposition: attachment; filename=' . $filename);

  foreach($column_titles as $key => $value) {
           $keys[] =$value;         
  }

  if($keys) print implode(',', $keys) ."\r\n";
  unset($keys);

    //fetching the field values
  foreach($row_array as $key => $value) {

   $values[] =$value; 

  }
    print implode(',', $values) ."\r\n";
    unset($values);
    }
    exit;

?>
7
user10644

Hier ist eine aktualisierte Funktion, die für D7 funktionieren sollte.

<?php
/**
 * Exports a CSV.
 *
 * @param array $variables
 *   An associative array of data containing "header" and "rows" keys.
 *   This is ready to be passed to theme_table(). See api.drupal.org/node/22950.
 *   Also contains the key "filename" specifying the filename.
 */
function _epc_standards_statistics_export_csv($variables) {
  drupal_add_http_header('Content-Type', 'text/csv; utf-8');
  drupal_add_http_header('Content-Disposition', 'attachment; filename=' . $variables['filename']);

  $output = '';
  $keys = array();
  foreach ($variables['header'] as $key => $value) {
    $keys[] = $value['data'];
  }
  if ($keys) {
    $output .= implode("\t", $keys) . "\n";
  }
  foreach ($variables['rows'] as $value) {
    $output .= implode("\t", $value) . "\n";
  }
  print $output;
  exit;
}
?>
5
user892592

Wenn Sie versuchen, Knoteninhalte zu exportieren, können Sie das Modul views_data_export verwenden und Inhalte mithilfe von Ansichten exportieren!

Dieses Modul bietet eine Möglichkeit, große Datenmengen aus Ansichten zu exportieren. Es bietet ein Anzeige-Plugin, das schrittweise in einem Stapel gerendert werden kann. Es sind Style-Plugins enthalten, die den Export in die folgenden Typen unterstützen:

CSV, Microsoft XLS, Microsoft DOC, Basic, TXT, XML.

Wenn Sie Daten aus Datenbanktabellen exportieren möchten, können Sie das Modul data berücksichtigen.

Mit dem Datenmodul können Sie verwandte Tabellensätze modellieren, verwalten und abfragen. Es bietet eine Administrationsoberfläche und eine Low-Level-API zum Bearbeiten von Tabellen und zum Zugreifen auf deren Inhalt. Das Datenmodul bietet eine Ansichtsintegration zum Anzeigen von Tabellendaten und Drupal Suchintegration zum Suchen von Tabelleninhalten.

0
Anil Sagar