[TYPO3-UG Denmark] Plugin der spytter CSV-filer ud
Peter Klein
peter at umloud.dk
Thu Mar 16 16:44:45 CET 2006
Hej Peter. Jeg gør det sådan her:
-- cut --
function exportCSV() {
$this->conf["csvFields"] =
"status,first,last,title,organization,department,address,zip,city,country,email,phone,comments,tstamp,crdate";
$from_table = 'tx_xeventos_participants';
$where_clause = "eventuid=".$this->eventUid;
$res =
$GLOBALS['TYPO3_DB']->exec_SELECTquery($this->conf["csvFields"],$from_table,$where_clause,$groupBy='',$orderBy='status',$limit='');
$rowArr=array();
// Add DB keys as header row
$rowArr[]=t3lib_div::csvValues(array_keys($row));
while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
$rowArr[]=t3lib_div::csvValues($row);
}
if (count($rowArr)>1) {
$filename="EventosExport_".date("dmy-Hi").".csv";
$mimeType = "application/octet-stream";
Header("Content-Type: ".$mimeType);
Header("Content-Disposition: attachment; filename=".$filename);
echo implode(chr(13).chr(10),$rowArr);
exit;
}
else {
return "Empty list";
}
}
-- cut --
Hvilket minder meget om den metode du beskriver.
--
Peter Klein/Umloud Untd
"Peter Makholm" <peter at makholm.net> skrev i en meddelelse
news:mailman.12936.1142522077.3122.typo3-ug-denmark at lists.netfielders.de...
> Jeg har lavet et plugin der genererer et datasæt og præsenterer det i
> noget HTML. Nu vil jeg egentlig også gerne "præsentere" de samme data
> som en CSV-fil, XML-fil, whatever...
>
> Jeg har tidligere haft noget der redefinerer mit PAGE-objekt i
> TyoScript for et delhierarki, men det er IMHO lidt et hack.
>
> Mulighed nummer 2 er at gøre noget ala:
>
> $query = "SELECT * FROM tx_table;"
> $res = mysql(TYPO3_db,$query);
>
> header('Content-type: application/vnd.ms-excel');
> header('Content-disposition: inline; filename=liste.csv');
> while($row = mysql_fetch_assoc($res) ) {
> echo $row['title'].";".$row['type']."\n";
> }
>
> exit;
>
> i main() i pluginnet. En smule pænere, men jeg afbryder Typo3 ret
> brutalt og får derfor ikke glæde af caching og hvad Typo3 nu ellers
> kunne finde på...
>
> Har jeg en tredje mulighed? Hvad er den kanoniske måde at gøre det på?
>
> --
> Peter Makholm | According to the hacker ethic, the meaning of life
> peter at makholm.net | is not Friday, but it is not Sunday either
> http://hacking.dk | -- Pekka Himanen
More information about the TYPO3-UG-denmark
mailing list