Tipto Posted July 11, 2004 Report Share Posted July 11, 2004 Hallo, ich habe meine Kundendaten um das Feld "Abteilung" erweitert. Klappt auch alles prima - nicht zuletzt dank der Hilfe von Euch und mzanier. Leider fehlt mir eine Idee wie ich die Werte aus der Datenbank nun auch in die Kundenadresse, Rechnungsadresse und Lieferschein bekomme. :grml: Im Kundenbereich der Adminoberfl?che wird der Wert der neuen Varibalen $abteilung auch richtig ausgelesen nur leider im Bereich der Bestellungen nicht. Hier geht es nach dem Firmennamen weiter mit der Adresse und nicht wie gew?nscht mit der Abteilung. Aus der orders.php werd ich nicht so recht schlau. Hier werden z.B. die Rechnungsdaten so ausgewertet: <?php echo xtc_address_format($order->billing['format_id'], $order->billing, 1, '', ' '); ?>. Wenn nun in der Klasse admin/order der Eintrag billing_abteilung vorhanden ist, wie kann ich diesen dann auswerten. billing_company wir ja auch ausgewertet. Allerdings billing_state nicht. :grml: Wo muss ich also eingreifen, dass der Wert f?r Abteilung, sofern vorhanden ?bernommen wird. Sobald ich mit diesem Thema durch bin, stelle ich gerne eine detaillierte Beschreibung wie der Kundenaccount um neue Werte erweitert werden kann zur Verf?gung. Ist n?mlich alles andere als trivial und bestimmt von allgem?inem Interesse. F?r Eure Hilfe im voraus vielen Dank!! Link to comment Share on other sites More sharing options...
mzanier Posted July 11, 2004 Report Share Posted July 11, 2004 order klasse im admin auch anpassen.. Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Hab ich getan -> amdin/classes/order.php. Geht nicht :grml: Hast Du noch eine Idee oder sonst noch jemand? Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Hat denn niemand eine L?sung? Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Kann mir denn wirklich niemand helfen. Kennt keiner das System! mzanier was ist mit dir? Warum wird der Wert f?r 'abteilung' nicht ausgelesen. So steht es in der admin/classes/order.php drin: $this->customer = array('name' => $order['customers_name'], 'company' => $order['customers_company'], 'abteilung' => $order['customers_abteilung'], Selbstverst?ndlich ebenso f?r die Versand- als auch der Bestelladresse. Es sind alle Werte vorhanden - wirklich. Sage ich aber: $this->customer = array('name' => $order['customers_name'], 'company' => $order['customers_abteilung'], erscheit der Wert f?r abteilung richtig in der Bestell?bersicht. Was muss ich tun, damit wie bei 'company' die 'abteilung' auch ausgelesen wird? Wo wird ?berhaupt in der der admin/orders.php definiert, dass der Wert von 'comapny ausgelsen wird? Hier jedenfalls nicht: <?php echo xtc_address_format($order->billing['format_id'], $order->billing, 1, '', ' '); ?> - oder doch. Ich verweifle noch :wall: Bitte um dringende Hilfe!!! Link to comment Share on other sites More sharing options...
mzanier Posted July 11, 2004 Report Share Posted July 11, 2004 ich gebe keine phpkurse =), das anzeigen zu lassen ist ja kein ding. 1. in den klasse die query ereitern und zuweisen. 2. in dem label den wert setzen 3. in der label funktion den wert setzen. fertig. Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 hi mzanier, ich brauche keinen PHP-Kurs sondern Tipps von Menschen die xtcommerce kennen. Wenn der Wert f?r Abteilung nicht in der Tabelle Customers sondern wie der Wert Company in der Tabelle Address_Book steht, bring mir eine Erweiterung der Label nix - oder? Und somit wir eine Erweiterung des querys ?berfl?ssig. Oder t?usche ich mich. Ich freue mich ?ber eine Antwort. Link to comment Share on other sites More sharing options...
mzanier Posted July 11, 2004 Report Share Posted July 11, 2004 das labe ist doch nur ne funktion die ein label zur?ck gibt, wenn du einen wert da drinnen haben willst, ist das ja egal von welcher table der abgefragt wird. $order->billing das objekt array wird ?bergeben, und wenn du nun ne zus?tzliche variable haben willst, dann muss das objekt array logischerweise erweitert werden. und wie du siehst: $this->customer = array('name' => $order['customers_name'], 'company' => $order['customers_company'], 'abteilung' => $order['customers_abteilung'], $order->billing geht dies schonmal nicht, da du dem label das billing array ?bergibst, und nicht das customers. da kann ich dir nicht helfen, das ist basic php, und ich kenne auch nicht deine kompletten ?nderungen, um dir zu sagen was du genau falsch machst. und ja ich kenne xtc, programmiere es ja. Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Hi mzanier, danke f?r die schnelle Antwort, habe per cut and paste mit gebaut. Hier die komplette Fassung der Klasse. Dann stimmts n?mlich wieder. Label bekommt den richtigen Wert. Was nun? class order { var $info, $totals, $products, $customer, $delivery; function order($order_id) { $this->info = array(); $this->totals = array(); $this->products = array(); $this->customer = array(); $this->delivery = array(); $this->query($order_id); } function query($order_id) { $order_query = xtc_db_query("select customers_name, customers_cid, customers_id, customers_company, customers_abteilung, customers_street_address, customers_suburb, customers_city, customers_postcode, customers_state, customers_country, customers_telephone, customers_email_address, customers_address_format_id, delivery_name, delivery_company, delivery_abteilung, delivery_street_address, delivery_suburb, delivery_city, delivery_postcode, delivery_state, delivery_country, delivery_address_format_id, billing_name, billing_company, billing_abteilung, billing_street_address, billing_suburb, billing_city, billing_postcode, billing_state, billing_country, billing_address_format_id, payment_method, cc_type, cc_owner, cc_number, cc_expires, comments, currency, currency_value, date_purchased, orders_status, last_modified, customers_status, customers_status_name, customers_status_image, customers_ip, language, customers_status_discount from " . TABLE_ORDERS . " where orders_id = '" . xtc_db_input($order_id) . "'"); $order = xtc_db_fetch_array($order_query); $totals_query = xtc_db_query("select title, text from " . TABLE_ORDERS_TOTAL . " where orders_id = '" . xtc_db_input($order_id) . "' order by sort_order"); while ($totals = xtc_db_fetch_array($totals_query)) { $this->totals[] = array('title' => $totals['title'], 'text' => $totals['text']); } $this->info = array('currency' => $order['currency'], 'currency_value' => $order['currency_value'], 'payment_method' => $order['payment_method'], 'status' => $order['customers_status'], 'status_name' => $order['customers_status_name'], 'status_image' => $order['customers_status_image'], 'status_discount' => $order['customers_status_discount'], 'cc_type' => $order['cc_type'], 'cc_owner' => $order['cc_owner'], 'cc_number' => $order['cc_number'], 'cc_expires' => $order['cc_expires'], 'comments' => $order['comments'], 'language' => $order['language'], 'date_purchased' => $order['date_purchased'], 'orders_status' => $order['orders_status'], 'last_modified' => $order['last_modified']); $this->customer = array('name' => $order['customers_name'], 'company' => $order['customers_company'], 'abteilung' => $order['customers_abteilung'], 'csID' => $order['customers_cid'], 'shop_id' => $order['shop_id'], 'ID' => $order['customers_id'], 'cIP' => $order['customers_ip'], 'street_address' => $order['customers_street_address'], 'suburb' => $order['customers_suburb'], 'city' => $order['customers_city'], 'postcode' => $order['customers_postcode'], 'state' => $order['customers_state'], 'country' => $order['customers_country'], 'format_id' => $order['customers_address_format_id'], 'telephone' => $order['customers_telephone'], 'email_address' => $order['customers_email_address']); $this->delivery = array('name' => $order['delivery_name'], 'company' => $order['delivery_company'], 'abteilung' => $order['delivery_abteilung'], 'street_address' => $order['delivery_street_address'], 'suburb' => $order['delivery_suburb'], 'city' => $order['delivery_city'], 'postcode' => $order['delivery_postcode'], 'state' => $order['delivery_state'], 'country' => $order['delivery_country'], 'format_id' => $order['delivery_address_format_id']); $this->billing = array('name' => $order['billing_name'], 'company' => $order['billing_company'], 'abteilung' => $order['billing_abteilung'], 'street_address' => $order['billing_street_address'], 'suburb' => $order['billing_suburb'], 'city' => $order['billing_city'], 'postcode' => $order['billing_postcode'], 'state' => $order['billing_state'], 'country' => $order['billing_country'], 'format_id' => $order['billing_address_format_id']); $index = 0; $orders_products_query = xtc_db_query("select orders_products_id, products_name, products_model, products_price, products_tax, products_quantity, final_price,allow_tax, products_discount_made from " . TABLE_ORDERS_PRODUCTS . " where orders_id ='" . xtc_db_input($order_id) . "'"); while ($orders_products = xtc_db_fetch_array($orders_products_query)) { $this->products[$index] = array('qty' => $orders_products['products_quantity'], 'name' => $orders_products['products_name'], 'model' => $orders_products['products_model'], 'tax' => $orders_products['products_tax'], 'price' => $orders_products['products_price'], 'discount' => $orders_products['products_discount_made'], 'final_price' => $orders_products['final_price'], 'allow_tax' => $orders_products['allow_tax']); $subindex = 0; $attributes_query = xtc_db_query("select products_options, products_options_values, options_values_price, price_prefix from " . TABLE_ORDERS_PRODUCTS_ATTRIBUTES . " where orders_id = '" . xtc_db_input($order_id) . "' and orders_products_id = '" . $orders_products['orders_products_id'] . "'"); if (xtc_db_num_rows($attributes_query)) { while ($attributes = xtc_db_fetch_array($attributes_query)) { $this->products[$index]['attributes'][$subindex] = array('option' => $attributes['products_options'], 'value' => $attributes['products_options_values'], 'prefix' => $attributes['price_prefix'], 'price' => $attributes['options_values_price']); $subindex++; } } $index++; } } } ?> Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Hi mzanier, ich habe es gefunden: Anpassung der general.php war von n?ten. Das war der Tipp den ich gesucht habe. Trotzdem vielen Dank f?r Deine M?he und um es klar zu stellen XTCommerce ist geil und Ihr (die Programmierer) leistet eine bomben Arbeit. Viele Gr??e :?: Link to comment Share on other sites More sharing options...
mzanier Posted July 11, 2004 Report Share Posted July 11, 2004 jo war klar das du das anpassen musst, denn dort ist auch die label funktion f?r den admin. Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Warum erw?hnst Du das dann nicht? Ich such mir den Wolf... :cry: Trotzdem und vor allem: Ich w?sch Dir noch einen sch?nen Sonntag!!! Link to comment Share on other sites More sharing options...
mzanier Posted July 11, 2004 Report Share Posted July 11, 2004 2. in dem label den wert setzen 3. in der label funktion den wert setzen. Link to comment Share on other sites More sharing options...
Tipto Posted July 11, 2004 Author Report Share Posted July 11, 2004 Ok, aber vielleicht solltest Du die Kinder auch beim (Vor-) und Nachnamen nennen. Du kennst alle Verzeichnisse und Dateien und wei? was drinn ist - ich nicht! Deshalb meine Fragen. cu tipto Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.