Nach rund 7 Stunden Arbeit kann ich nur einen eingeschränkten Erfolg vermelden. Die Extrafelder in der Datenbank sind angelegt und funktionieren. Direkt in der SQL-Datenbank kann ich auch Daten eintragen. Im Backend werden die in die Datenbank direkt eingegebene Daten angezeigt. In die Eingabefelder kann ich Eingaben vornehmen. Ein Speichern ist aber nicht möglich; ich erhalte die Fehlermeldung "USER ERROR(256): "SQL Error"". Außerdem werden auch hier statt den in der Sprachdatei hinterlegten Feldbezeichnungen die Variablen ausgegeben. Im Frontend funktioniert die Ausgabe der direkt eingegebenen Datenbankfelder auf der Artikeldetailseite einwandfrei. Allerdings werden auch hier keine Feldbeschreibungen angezeigt (auch nicht die Variablenbezeichnung). Zur Fehlersuche bin ich jetzt Alles zweimal durchgegangen, ohne etwas zu finden. Inzwischen bin ich nach über 7 Stunden hochkonzentrierter Arbeit etwas müde geworden. Vielleicht hat Jemand eine Idee, wo ich ansetzen kann?
@Andreas, Welche Schritte hast du schon gemacht? Und wie sehen deine Erweiterungen aus? Hier nochmals eine Beschreibung in PDF:
Zusatzfelder für ProductListing: Um zu Zusatzfelder in dem ProduktListing zu integrieren, müssen zwei Overloads geschrieben werden. Aber erstmal muss die Kommunikation zwischen die Felder im Shop und deine Datenbank einwandfrei funktionieren und keine USER ERROR zurückgegeben werden.
Hallo, zunächst habe ich mir das zip-File aus Post #69 runtergeladen und entpackt. Dann habe ich die SQL-Felder angelegt. Anschließend bin ich gemäß Beschreibung aus Post #68 Schritt für Schritt durchgegangen. Sofern Overloads gemacht werden sollten, habe ich die Original-Gambio-Dateien aus der Version 2.6.0.0 genommen und die jeweiligen Anpassungen in den Dateien geschrieben und dann entsprechend in das entpackte Verzeichnis gespeichert (also die Dateien dort überschrieben). Bei den neu anzulegenden Dateien habe ich die Dateien aus dem zip-File genommen und dort die entsprechenden Anpassungen (ich habe 30 Felder eingefügt) eingebaut und in das entpackte Verzeichnis gespeichert. Zum Schluss habe ich das so erstellte Gesamtverzeichnis auf den Server geladen.
Hast Du in einer der Dateien eventuell eine fasche Bezeichnung? So etwas wie "extrafield" statt "extrafeld"? Groß und Kleinschreibung? vergessener Unterstrich?
Hallo Barbara, der einzige Unterschied zu LeGong's (dessen Order für PN übrigens voll ist) Vorlage-ZIP-Datei, besteht -soweit ich es nach zweimaligem Kontrollieren sagen kann- darin, dass der einzufügende Text für die Sprachdatei der Produkte identisch ist mit dem Text aus der ADMIN-Datei. Das heißt, die Variablenvorgaben in der Produkt-Sprachdatei dort habe ich groß geschrieben. Hatte dann auch zum Test 2 klein geschrieben (wie in der Vorlage), aber im Frontend trat keine Änderung auf.
2: Die Sprachdateien anlegen (Hier nur die deutsche Sprache): a) FELDBEZEICHNUNGEN: eine PHP-Datei mit dem folgenden Inhalt (mit deinen eigenen Felder-Namen ersetzen) erstellen und in dem Ordner "lang/german/user_sections/admin" (den Ordner "admin" muss man anlegen) speichern. Diese Datei muss "categories.lang.inc.php" heißen. DIESE ERWEITERUNG IST UPDATESSICHER PHP: <?php/* -------------------------------------------------------------- categories.lang.inc.php 2015-03-26 gm Gambio GmbH http://www.gambio.de Copyright (c) 2015 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( // BOF products_extrafield 'HEADING_EXTRAFIELDS_CONFIGURATION' => 'Extra Felder Konfigurieren', 'TEXT_PRODUCTS_CONTENT' => 'Inhalt:', 'TEXT_PRODUCTS_ORIGIN' => 'Herkunft:', 'TEXT_PRODUCTS_TYPE' => 'Milch-Sorte:', 'TEXT_PRODUCTS_PROTEIN' => 'Eiweiß:', 'TEXT_PRODUCTS_PRIME_COST' => 'EK-Price Netto:', 'TEXT_BRUTTO' => 'EK-Preise Brutto: ', 'HEADING_EXTRAFIELDS_CONFIGURATION' => 'Extra Felder editieren', 'TEXT_PRODUCTS_PACKAGE' => 'Verpackung:', 'TEXT_PRODUCTS_FABRICATION' => 'Anfertigung:', 'TEXT_PRODUCTS_TASTE' => 'Geschmack:', 'TEXT_PRODUCTS_VARIETY' => 'Käse-Sorte:', 'TEXT_PRODUCTS_TYPE' => 'Milch-Sorte:', 'TEXT_PRODUCTS_TREATMENT' => 'Roh⁄Past.:', 'TEXT_PRODUCTS_LACTOSE' => 'Laktosefrei:', 'TEXT_PRODUCTS_FAT' => 'Fett i.Tr.:', 'TEXT_PRODUCTS_MATURITY' => 'Reifezeit:', 'TEXT_PRODUCTS_CALORIE' => 'Kcal/Kj:', 'TEXT_PRODUCTS_PROTEIN' => 'Eiweiß:', 'TEXT_PRODUCTS_CARBOHYDRATE' => 'Kohlenhydrate:', 'TEXT_PRODUCTS_CALCIUM' => 'Calcium/100g:', 'TEXT_PRODUCTS_GLUTEN' => 'Gluten:', 'TEXT_PRODUCTS_SALT' => 'Salzgehalt:', 'TEXT_PRODUCTS_GLUTAMATE' => 'Glutamat:', 'TEXT_PRODUCTS_FEATURE' => 'Merkmale:', 'TEXT_PRODUCTS_ADDITIVES' => 'Zusatzstoffe:' //EOF products_extrafield ); b) Nun die Feldbezeichnungen für die Artikeldetailansicht: In dem Ordner "lang/german/user_sections/product" (den Ordner "product muss man anlegen) eine PHP-Datei mit folgendem Inhalt anlegen. Diese Datei muss "product_info.lang.inc.php" heißen. DIESE ERWEITERUNG IST UPDATESSICHER PHP: <?php/* -------------------------------------------------------------- product_info.lang.inc.php 2015-01-02 gm Gambio GmbH http://www.gambio.de Copyright (c) 2015 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( // BOF products_extrafield 'text_products_content' => 'Inhalt:', 'text_products_origin' => 'Herkunft:', 'text_products_package' => 'Verpackung:', 'text_products_fabrication' => 'Anfertigung:', 'text_products_taste' => 'Geschmack:', 'text_products_variety' => 'Käsesorte:', 'text_products_type' => 'Milch-Sorte:', 'text_products_treatment' => 'Behandlung:', 'text_products_lactose' => 'Laktosefrei:', 'text_products_fat' => 'Fett i.Tr.:', 'text_products_maturity' => 'Reifezeit:', 'text_products_calorie' => 'Kcal/Kj:', 'text_products_protein' => 'Eiweiß:', 'text_products_carbohydrate' => 'Kohlenhydrate:', 'text_products_calcium' => 'calsium/100g:', 'text_products_feature' => 'Merkmale:', 'text_products_salt' => 'Salzgehalt:', 'text_products_gluten' => 'Gluten:', 'text_products_glutamate' => 'Glutamat:', 'text_products_additives' => 'Zusatzstoffe:', 'text_products_feature' => 'Merkmale:' // EOF products_extrafield); c) FELDBEZEICHNUNGEN für Artikel_Listen-Ansicht: In dem Ordner "lang/german/user_sections/product" (den Ordner "product muss man anlegen) eine PHP-Datei mit folgendem Inhalt anlegen. Diese Datei muss "product_listing.lang.inc.php" heißen. DIESE ERWEITERUNG IST UPDATESSICHER PHP: <?php/* -------------------------------------------------------------- product_listing.lang.inc.php 2015-01-02 gm Gambio GmbH http://www.gambio.de Copyright (c) 2015 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( // BOF products_extrafield 'text_products_content' => 'Inhalt:', 'text_products_model' => 'Art-Nr.: ', 'text_products_origin' => 'Herkunft:', 'text_products_package' => 'Verpackung:', 'text_products_fabrication' => 'Anfertigung:', 'text_products_taste' => 'Geschmack:', 'text_products_variety' => 'Käsesorte:', 'text_products_type' => 'Milch-Sorte:', 'text_products_treatment' => 'Behandlung:', 'text_products_lactose' => 'Laktosefrei:', 'text_products_fat' => 'Fett i.Tr.:', 'text_products_maturity' => 'Reifezeit:', 'text_products_calorie' => 'Kcal/Kj:', 'text_products_protein' => 'Eiweiß:', 'text_products_carbohydrate' => 'Kohlenhydrate:', 'text_products_calcium' => 'calsium/100g:', 'text_products_feature' => 'Merkmale:', 'text_products_salt' => 'Salzgehalt:', 'text_products_gluten' => 'Gluten:', 'text_products_glutamate' => 'Glutamat:', 'text_products_additives' => 'Zusatzstoffe:', 'text_products_feature' => 'Merkmale:' //EOF products_extrafield );
Danke für das Posting. Bei 2. Sprachdateien anlegen steht in Post 67, dass der Pfad lautet:"lang/german/user_sections/admin/product/ ". In Post 87 schreibst du, der Pfad sei "lang/german/user_sections/admin". Habe es mal dahin kopiert, hat aber nichts geändert. Bis auf die Groß-/Kleinschreibung in der Sprachdatei für die Artikel-Detailansicht ist alles gleich. Listenansicht habe ich noch nicht eingebaut.
Der Fehler liegt in deiner SQL-Datei: Korrkte version: Code: ALTER TABLE `products` ADD `afs_art_umsatzsteuertext` VARCHAR(64) NOT NULL, ADD `afs_art_zf01_jahr` INT(5) NOT NULL, ADD `afs_art_zf02_erhaltung` VARCHAR(32) NOT NULL, ADD `afs_art_zf03_auflage` VARCHAR(16) NOT NULL, ADD `afs_art_zf04_rand` VARCHAR(255) NOT NULL, ADD `afs_art_zf05_ausgabedatum` VARCHAR(255) NOT NULL, ADD `afs_art_zf06_ungueltig_seit` VARCHAR(24) NOT NULL, ADD `afs_art_zf07_durchmesser` VARCHAR(64) NOT NULL, ADD `afs_art_zf08_dicke` VARCHAR(64) NOT NULL, ADD `afs_art_zf09_bruttogewicht` VARCHAR(64) NOT NULL, ADD `afs_art_zf10_metall` VARCHAR(255) NOT NULL, ADD `afs_art_zf11_feingehalt` VARCHAR(128) NOT NULL, ADD `afs_art_zf12_feingewicht` VARCHAR(64) NOT NULL, ADD `afs_art_zf13_muenztyp` VARCHAR(128) NOT NULL, ADD `afs_art_zf14_folder` VARCHAR(64) NOT NULL, ADD `afs_art_zf15_kapsel` VARCHAR(64) NOT NULL, ADD `afs_art_zf16_kassette` VARCHAR(64) NOT NULL, ADD `afs_art_zf17_zertifikat` VARCHAR(64) NOT NULL, ADD `afs_art_zf18_gesamt_nennwert` VARCHAR(64) NOT NULL, ADD `afs_art_zf20_praegebuchstabe` VARCHAR(32) NOT NULL, ADD `afs_art_zf21_praegeort` VARCHAR(255) NOT NULL, ADD `afs_art_zf22_ausgabeland` VARCHAR(255) NOT NULL, ADD `edelmetall_multiartikel` INT(8) NOT NULL, ADD `edelmetall_anteil_artikel_unze` decimal(15,4) NOT NULL, ADD `edelmetall_marge_handel` decimal(15,8) NOT NULL, ADD `edelmetall_marge_ich` decimal(15,8) NOT NULL, ADD `edelmetall_mindestpreis` decimal(15,4) NOT NULL, ADD `edelmetall_preisbasis` VARCHAR(16) NOT NULL, ADD `reserve01` VARCHAR(255) NOT NULL, ADD `reserve02` VARCHAR(255) NOT NULL; gehe zu Datenbank. Öffne die Tabellle Produkte. Struktur-Ansicht. Bearbeite die Spalte "afs_art_zf06_ungueltig_sei". Füge einen "t" am Ende der Name. Also "afs_art_zf06_ungueltig_seit" dann ist die SQL-ERROR schon mal weg
Versuche es mal, wenn Du die Sprachdateien nur in lang/ german/ user_section/ ablegst. Bei mir funktioniert das in den Unter-Ordnern manchmal nicht und ohne geht es dann. Die Cache für Texte, Module und Seiten danach leeren
Hier die Datei für die Texte in Artikeldetailansicht: PHP: <?php/* -------------------------------------------------------------- product_info.lang.inc.php 2015-01-02 gm Gambio GmbH http://www.gambio.de Copyright (c) 2015 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( // BOF products_extrafield 'text_afs_art_umsatzsteuertext' => 'MwSt:', 'text_afs_art_zf01_jahr' => 'Jahrgang:', 'text_afs_art_zf02_erhaltung' => 'Erhaltung:', 'text_afs_art_zf03_auflage' => 'Auflage:', 'text_afs_art_zf04_rand' => 'Randschrift:', 'text_afs_art_zf05_ausgabedatum' => 'Ausgabedatum:', 'text_afs_art_zf06_ungueltig_seit' => 'ungültig seit:', 'text_afs_art_zf07_durchmesser' => 'Durchmesser:', 'text_afs_art_zf08_dicke' => 'Dicke:', 'text_afs_art_zf09_bruttogewicht' => 'Gewicht:', 'text_afs_art_zf10_metall' => 'Metall:', 'text_afs_art_zf11_feingehalt' => 'Feingehalt:', 'text_afs_art_zf12_feingewicht' => 'Feingewicht:', 'text_afs_art_zf13_muenztyp' => 'Münztyp:', 'text_afs_art_zf14_folder' => 'Folder/Blister:', 'text_afs_art_zf15_kapsel' => 'Münzkapsel:', 'text_afs_art_zf16_kassette' => 'Münzkassette:', 'text_afs_art_zf17_zertifikat' => 'Zertifikat:', 'text_afs_art_zf18_gesamz_nennwert' => 'Gesamt-Nennwert:', 'text_afs_art_zf20_praegebuchstabe' => 'Prägebuchstabe:', 'text_afs_art_zf21_praegeort' => 'Prägeort:', 'text_afs_art_zf22_ausgabeland' => 'Ausgabeland:', 'text-edelmetall_preisbasis' => 'Preisbasis:', 'text-edelmetall_multiartikel' => 'Multiartikel:', 'text-edelmetall_anteil_artikel_unze' => 'Edelmetallanteil:', 'text-edelmetall_marge_handel' => 'Margenfaktor Großhandel in %:', 'text-edelmetall_marge_ich' => 'Marge ich in Euro:', 'text-edelmetall_mindestpreis' => 'Preisuntergrenze in Euro je Artikel:', 'text_reserve01' => 'Reservefeld 01:', 'text_reserve02' => 'Reservefeld 02:'//EOF products_extrafield); gespeicher unter "lang/german/user_sections/product_info.lang.inc.php" ODER "lang/german/user_sections/product/product_info.lang.inc.php" ICH HABE GERADE EIN PAAR FALSCHE NAMENVERGABE WIEDER KORRIGIERT. KOPIERE DEN CODE UND ERSÄTZE DEN VORHERIGEN FALLS DU ES SCHON EINGEGEBEN HAST
Habe jetzt 3 Dinge gemacht: a) alle Cache über ADMIN geleert b) Cache und Template_C nochmal über FTP geleert (waren noch Kleinigkeiten drin) c) die Sprachdateien in das Verzeichnis lang/german/user_section/ (also ohne weitere Unterordner) kopiert Resultat: im ADMIN-Bereich wird alles richtig angezeigt. Im Frontend fehlen die Feldbezeichnungen nach wie vor. Aber das ist für mich kein Problem, da ich die Feldbezeichnungen da nicht brauche. Werde aber wohl morgen einfach aus Neugierde noch etwas an der Stelle tüfteln. Wirklich vielen herzlich Dank für die Hilfe so spät an einem Samstag-Abend!!!
Hier nochmals korrigiert: product_info.lang.inc.php PHP: <?php/* -------------------------------------------------------------- product_info.lang.inc.php 2015-01-02 gm Gambio GmbH http://www.gambio.de Copyright (c) 2015 Gambio GmbH Released under the GNU General Public License (Version 2) [http://www.gnu.org/licenses/gpl-2.0.html] --------------------------------------------------------------*/$t_language_text_section_content_array = array( // BOF products_extrafield 'text_afs_art_umsatzsteuertext' => 'MwSt:', 'text_afs_art_zf01_jahr' => 'Jahrgang:', 'text_afs_art_zf02_erhaltung' => 'Erhaltung:', 'text_afs_art_zf03_auflage' => 'Auflage:', 'text_afs_art_zf04_rand' => 'Randschrift:', 'text_afs_art_zf05_ausgabedatum' => 'Ausgabedatum:', 'text_afs_art_zf06_ungueltig_seit' => 'ungültig seit:', 'text_afs_art_zf07_durchmesser' => 'Durchmesser:', 'text_afs_art_zf08_dicke' => 'Dicke:', 'text_afs_art_zf09_bruttogewicht' => 'Gewicht:', 'text_afs_art_zf10_metall' => 'Metall:', 'text_afs_art_zf11_feingehalt' => 'Feingehalt:', 'text_afs_art_zf12_feingewicht' => 'Feingewicht:', 'text_afs_art_zf13_muenztyp' => 'Münztyp:', 'text_afs_art_zf14_folder' => 'Folder/Blister:', 'text_afs_art_zf15_kapsel' => 'Münzkapsel:', 'text_afs_art_zf16_kassette' => 'Münzkassette:', 'text_afs_art_zf17_zertifikat' => 'Zertifikat:', 'text_afs_art_zf18_gesamt_nennwert' => 'Gesamt-Nennwert:', 'text_afs_art_zf20_praegebuchstabe' => 'Prägebuchstabe:', 'text_afs_art_zf21_praegeort' => 'Prägeort:', 'text_afs_art_zf22_ausgabeland' => 'Ausgabeland:', 'text-edelmetall_preisbasis' => 'Preisbasis:', 'text-edelmetall_multiartikel' => 'Multiartikel:', 'text-edelmetall_anteil_artikel_unze' => 'Edelmetallanteil:', 'text-edelmetall_marge_handel' => 'Margenfaktor Großhandel in %:', 'text-edelmetall_marge_ich' => 'Marge ich in Euro:', 'text-edelmetall_mindestpreis' => 'Preisuntergrenze in Euro je Artikel:', 'text_reserve01' => 'Reservefeld 01:', 'text_reserve02' => 'Reservefeld 02:'//EOF products_extrafield);
Habe eben doch noch einmal auf die Schnelle die Sprachdatei mit den Kleinbuchstaben für die Produkt-Detailansicht aud den Server geladen, Cache etc. alles komplett nochmal raus. Und jetzt werden auch die Feldbezeichnungen im Frontend angezeigt. Noch einmal: Vielen lieben Dank!!!