Jep, nervt mich auch .....
Ich hab's mal schnell programmiert:
/admin/module_newsletter.php
Suche:
switch ($_GET['action']) { // actions for datahandling
Dahinter einfügen:
case 'list': // show List of all Recipients, where status is OK $csv = xtc_db_query
("SELECT customers_firstname, customers_lastname, customers_email_address FROM ".TABLE_NEWSLETTER_RECIPIENTS
." WHERE mail_status = 1"); header("Content-type: text/csv"); header("Content-Disposition: attachment; filename=newsletter_recipients.csv"); header("Pragma: no-cache"); header("Expires: 0"); // write heading echo '"customers_firstname","customers_lastname","customers_email_address"' . "\r\n"; // write data while ($row = xtc_db_fetch_array
($csv)){ echo '"'. str_replace(array("\r","\n",",",'"'),array(''),$row['customers_firstname']) . '","' . str_replace(array("\r","\n",",",'"'),array(''),$row['customers_lastname']) . '","' . str_replace(array("\r","\n",",",'"'),array(''),$row['customers_email_address']) . '"' . "\r\n"; } die(); Gleiche Datei suche:
echo '<a class="button" href="'.xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=new').'">'.BUTTON_NEW_NEWSLETTER.'</a>';
Füge dahinter ein:
echo '<br /><br /><a class="button" href="'.xtc_href_link(FILENAME_MODULE_NEWSLETTER,'action=list').'">'.BUTTON_LIST_NEWSLETTER.'</a>';
/lang/german/admin/module_newsletter.php
Füge VOR dem abschließenden
?>
das ein:
define('BUTTON_LIST_NEWSLETTER', 'Liste Newsletterempänger als CSV'); Wenn Du dann auf den neuen Knopf drückst,
unter
Hilfsprogramme -> Newsletter,
[ Für Gäste sind keine Dateianhänge sichtbar ]
... lädt der Browser das ganze als CSV herunter. Das kann man dann z.B. in Openoffice Calc oder Excel aufmachen.
[
EDIT Tomcraft 01.06.2016: Anleitung in
Beitrag 1 verlinkt.]
[
EDIT Tomcraft 02.06.2016: Fehler in Anleitung
korrigiert.]