Hallo liebe Leute!
Ich hab bei mir im Archiv noch ne Datei gefunden um alle Kunden als CSV Datei zu speichern.
Jetzt wollte ich die Tabelle um die Strasse, Ort und PLZ erweitern.
Leider scheitere ich daran, das alles ausgelesen wird.
Es wird mir nur die Tabellenüberschrift ausgegeben.
Die Adresse und der Ort stehen ja auch in der Tabelle address_book.
Die Datei liest aber nur die customers Tabelle aus.
Wie müßte ich die Abfrage erweitern, damit auch die andere Tabell ausgelesen wird?
Hier die Datei customers.php die man einfach ins admin/includes/modules/export lädt und dann im Admin einstellen kann:
<?php/* -----------------------------------------------------------------------------------------
File: customers.php
Version: 1.01
http://www.sirconic-group.de
Copyright (c) 2003 XT-Commerce
-----------------------------------------------------------------------------------------
based on:
(c) 2000-2001 The Exchange Project (earlier name of osCommerce)
(c) 2002-2003 osCommerce(cod.php,v 1.28 2003/02/14); www.oscommerce.com
(c) 2003 nextcommerce (invoice.php,v 1.6 2003/08/24); www.nextcommerce.org
(c) 2003 XT-Commerce (billiger.php; www.(( Wir dulden keine kommerziellen Werbelinks - Bitte <a href="index.php?topic=3013.0">Forenregeln</a> beachten! ))
Released under the GNU General Public License
---------------------------------------------------------------------------------------*/defined( '_VALID_XTC' ) or
die( 'Direct Access to this location is not allowed.' );define('MODULE_CUSTOMERS_TEXT_DESCRIPTION', 'Export - Kundendaten(Semikolon getrennt)<br><b>Format:</b><br>"Geschlecht","Vorname","Nachname","Adresse","PLZ","Ort","EMail","Telefon","Fax","Newsletter"');define('MODULE_CUSTOMERS_TEXT_TITLE', 'Kundendaten - CSV');define('MODULE_CUSTOMERS_FILE_TITLE' , '<hr noshade>Dateiname');define('MODULE_CUSTOMERS_FILE_DESC' , 'Geben Sie einen Dateinamen ein, falls die Exportadatei am Server gespeichert werden soll.<br>(Verzeichnis export/)');define('MODULE_CUSTOMERS_STATUS_DESC','Modulstatus');define('MODULE_CUSTOMERS_STATUS_TITLE','Status');define('EXPORT_YES','Nur Herunterladen');define('EXPORT_NO','Am Server Speichern');define('EXPORT','Bitte den Sicherungsprozess AUF KEINEN FALL unterbrechen. Dieser kann einige Minuten in Anspruch nehmen.');define('EXPORT_TYPE','<hr noshade><b>Speicherart:</b>');define('EXPORT_STATUS_TYPE','<hr noshade><b>Kundengruppe:</b>');define('EXPORT_STATUS','Bitte wählen Sie die Kundengruppe, die Basis für den Exportierten Preis bildet. (Falls Sie keine Kundengruppenpreise haben, wählen Sie <i>Gast</i>):</b>');// include needed functions class customers
{ var $code, $title, $description, $enabled; function customers
() { global $order; $this->code = 'customers'; $this->title = MODULE_CUSTOMERS_TEXT_TITLE
; $this->description = MODULE_CUSTOMERS_TEXT_DESCRIPTION
; $this->sort_order = MODULE_CUSTOMERS_SORT_ORDER
; $this->enabled = ((MODULE_CUSTOMERS_STATUS
== 'True') ?
true : false); } function process
($file) {//Select-Fragement fuer die Kundengruppenfilterung if ($_POST[status
] == '999999') { $filtercode=''; } else { $filtercode=' where customers_status= '.$_POST[status
]; } @xtc_set_time_limit
(0); $schema = 'Anrede;Vorname;Nachname;Strasse;Plz;Ort;E-Mail;Telefon;Fax;Newsletter' . "\n"; $export_query =xtc_db_query
("SELECT
customers_gender,
customers_firstname,
customers_lastname,
customers_street_address,
customers_postcode,
customers_city,
customers_email_address,
customers_telephone,
customers_fax,
customers_newsletter
FROM
customers
".$filtercode." "); while ($customers = xtc_db_fetch_array
($export_query)) { //create content $schema .= "\"". $customers['customers_gender'] . "\",\"". $customers['customers_firstname'] . "\",\"". $customers['customers_lastname'] . "\",\"". $customers['customers_street_address'] . "\",\"". $customers['customers_postcode'] . "\",\"". $customers['customers_city'] . "\",\"". $customers['customers_email_address'] . "\",\"". $customers['customers_telephone'] . "\",\"". $customers['customers_fax'] . "\",\"". $customers['customers_newsletter'] . "\"". "\n"; } // create File $fp = fopen(DIR_FS_DOCUMENT_ROOT
.'export/' . $file, "w+"); fputs($fp, $schema); fclose($fp); switch ($_POST['export']) { case 'yes': // send File to Browser $extension = substr($file, -3); $fp = fopen(DIR_FS_DOCUMENT_ROOT
.'export/' . $file,"rb"); $buffer = fread($fp, filesize(DIR_FS_DOCUMENT_ROOT
.'export/' . $file)); fclose($fp); header('Content-type: application/x-octet-stream; charset=ISO-8859-15'); header('Content-disposition: attachment; filename=' . $file); echo $buffer; exit; break; } } function display
() {// Verfuegbare Kundengruppen aus Datenbank laden $customers_statuses_array = xtc_get_customers_statuses
();// Jetzt noch spezialgruppe fuer "Alle Kunden" hinzufuegen $customers_statuses_array[] = array ('id' => '999999', 'text' => 'Alle Kunden', 'csa_public' => $customers_statuses[''], 'csa_image' => $customers_statuses[''], 'csa_discount' => $customers_statuses[''], 'csa_ot_discount_flag' => $customers_statuses[''], 'csa_ot_discount' => $customers_statuses[''], 'csa_graduated_prices' => $customers_statuses['']); return array('text' => EXPORT_STATUS_TYPE
.'<br>'. EXPORT_STATUS
.'<br>'. xtc_draw_pull_down_menu
('status',$customers_statuses_array, '1').'<br>'. EXPORT_TYPE
.'<br>'. EXPORT
.'<br>'. xtc_draw_radio_field
('export', 'no',false).EXPORT_NO
.'<br>'. xtc_draw_radio_field
('export', 'yes',true).EXPORT_YES
.'<br>'. '<br>' . xtc_button
(BUTTON_EXPORT
) . xtc_button_link
(BUTTON_CANCEL
, xtc_href_link
(FILENAME_MODULE_EXPORT
, 'set=' . $_GET['set'] . '&module=customers'))); } function check
() { if (!isset($this->_check
)) { $check_query = xtc_db_query
("select configuration_value from " . TABLE_CONFIGURATION
. " where configuration_key = 'MODULE_CUSTOMERS_STATUS'"); $this->_check
= xtc_db_num_rows
($check_query); } return $this->_check
; } function install
() { xtc_db_query
("insert into " . TABLE_CONFIGURATION
. " (configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('MODULE_CUSTOMERS_FILE', 'customers.csv', '6', '1', '', now())"); xtc_db_query
("insert into " . TABLE_CONFIGURATION
. " (configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('MODULE_CUSTOMERS_STATUS', 'True', '6', '1', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");} function remove
() { xtc_db_query
("delete from " . TABLE_CONFIGURATION
. " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys
() { return array('MODULE_CUSTOMERS_STATUS','MODULE_CUSTOMERS_FILE'); } }?> Vielleicht kann mir ja jemand auf die Sprünge helfen.
Was ich gemacht habe:
$schema = 'Anrede;Vorname;Nachname;Strasse;Plz;Ort;E-Mail;Telefon;Fax;Newsletter' . "\n";
Erweitert um Strasse,PLZ und Ort
$export_query =xtc_db_query("SELECT
customers_gender,
customers_firstname,
customers_lastname,
customers_street_address,
customers_postcode,
customers_city,
customers_email_address,
customers_telephone,
customers_fax,
customers_newsletter
FROM
customers
".$filtercode." ");
Erweitert um:
customers_street_address,customers_postcode,customers_city,
//create content
$schema .= "\"".
$customers['customers_gender'] . "\",\"".
$customers['customers_firstname'] . "\",\"".
$customers['customers_lastname'] . "\",\"".
$customers['customers_street_address'] . "\",\"".
$customers['customers_postcode'] . "\",\"".
$customers['customers_city'] . "\",\"".
$customers['customers_email_address'] . "\",\"".
$customers['customers_telephone'] . "\",\"".
$customers['customers_fax'] . "\",\"".
$customers['customers_newsletter'] . "\"".
"\n";
Erweitert um:
$customers['customers_street_address'] . "\",\"".
$customers['customers_postcode'] . "\",\"".
$customers['customers_city'] . "\",\"".
Nehme ich alles wieder raus funktioniert die Datei wie sie soll.
Es werden alle Daten ausgelesen und in eine CSV Datei gespeichert...
LG
Peter
Linkback: https://www.modified-shop.org/forum/index.php?topic=36665.0