Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Fehlermeldung nach Grundpreismodul Installation auf Version 1.06

    neduc

    • Neu im Forum
    • Beiträge: 2
    Hallöchen,

    Ich hatte das Grundpreismodul nach Anleitung installiert ( alle Dateien in die jeweiligen Ordner auf dem Server, so wie beschrieben). Dann Artikelmerkmale und Attribute angelegt.

    Will ich nun das Ergebnis mir bei einem Artikel anschauen erscheint folgende Fehlermeldung:

    1054 - Unknown column 'pvpe.language_id' in 'where clause'

    SELECT pov.products_options_values_id, pov.products_options_values_name, pa.attributes_model, pa.options_values_price, pa.price_prefix, pa.attributes_stock, pa.attributes_model, p.products_price FROM products p, products_attributes pa, products_options_values pov WHERE pa.products_id = '1' AND p.products_id = '1' AND pa.options_id = '1' AND pa.options_values_id = pov.products_options_values_id AND pov.language_id = '2' AND pvpe.language_id = '2' ORDER BY pa.sortorder, pa.options_values_id

    [MOD SQL Error]

    Wo habe ich den Bock geschossen? Werde nämlich aus der Fehlermeldung nicht ganz schlau.

    Gruß Paul :motz:

    Linkback: https://www.modified-shop.org/forum/index.php?topic=32529.0
    rechtstexte für onlineshop

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Dann nehmen wir mal den SQL auseinander ....

    Wähle Spalten kürzel.Feld
    Code: SQL  [Auswählen]
    SELECT pov.products_options_values_id, pov.products_options_values_name, pa.attributes_model, pa.options_values_price, pa.price_prefix, pa.attributes_stock, pa.attributes_model, p.products_price
     

    Von Tabelle irgendwas als kürzel
    Code: SQL  [Auswählen]
    FROM products p, products_attributes pa, products_options_values pov

    Wo Bedingung erfüllt
    Code: SQL  [Auswählen]
    WHERE pa.products_id = '1' AND p.products_id = '1' AND pa.options_id = '1' AND pa.options_values_id = pov.products_options_values_id AND pov.language_id = '2' AND pvpe.language_id = '2'

    Sortiere nach irgendwas
    Code: SQL  [Auswählen]
    ORDER BY pa.sortorder, pa.options_values_id

    Da steht in der WHERE clause:
    Code: PHP  [Auswählen]
    pvpe.language_id
    Das Kürzel pvpe kommt aber in der FROM Sektion gar nicht vor.
    Hier werden die Kürzel p für products, pa für products_attributes und pov für products_options_values definiert:
    Code: SQL  [Auswählen]
    FROM products p, products_attributes pa, products_options_values pov

    Da ich das Modul nicht kenne .... entweder fehlt in der Sektion FROM ein paar "tabellen_name kürzel", oder das Kürzel pvpe ist ein Tippfehler und soll p, pa oder pov heißen.

    Edit: Ja, Kürzel ist der falsche Begriff. Aber den versteht jeder ;-)

    neduc

    • Neu im Forum
    • Beiträge: 2
    Das ist das Grundpreismodul vom Mitglied "Tomcraft"

    http://www.modified-shop.org/forum/index.php?topic=6214.0

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Du hast wohl einen Bug gefunden

    in der product_attributes.php aus Torstens Modul steht:
    Code: PHP  [Auswählen]
    $products_options_query = xtDBquery("SELECT pov.products_options_values_id,
                                                                                                            pov.products_options_values_name,
                                                                                                            pa.attributes_model,
                                                                                                            pa.options_values_price,
                                                                                                            pa.price_prefix,
                                                                                                            pa.attributes_stock,
                                                                                                            pa.attributes_model,
                                                                                                            p.products_price
                                                                                               FROM "
    .TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_ATTRIBUTES." pa,
                                                                                                            "
    .TABLE_PRODUCTS_OPTIONS_VALUES." pov
                                                                                              WHERE pa.products_id = '"
    .$product->data['products_id']."'
                                                    AND p.products_id = '"
    .$product->data['products_id']."'
                                                                                                    AND pa.options_id = '"
    .$products_options_name['products_options_id']."'
                                                                                                    AND pa.options_values_id = pov.products_options_values_id
                                                                                                    AND pov.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                                                                                    AND pvpe.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                                                                       ORDER BY pa.sortorder, pa.options_values_id"
    );
    }
     

    Das kann so nicht funktionieren.

    Da ich jetzt nur raten kann ..... ich würde einfach mal testen, ob das Modul funktioniert, wenn ich vor die Zeile 124
    Code: PHP  [Auswählen]
    ".TABLE_PRODUCTS_OPTIONS_VALUES." pov
    Das einfüge:
    Code: PHP  [Auswählen]
    ".TABLE_PRODUCTS_VPE." pvpe,

    Das ist aber jetzt  :glaskugel:
    Ich müsste mich da erst rein denken. Oder rumprobieren. Wenn das nicht klappt, wäre mein nächster Versuch zu schauen welche Tabellen davon:
    Code: PHP  [Auswählen]
                                                                                               FROM ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_ATTRIBUTES." pa,
                                                                                                            ".TABLE_PRODUCTS_OPTIONS_VALUES." pov
    die Spalte language_id enthalten .... die pov fällt weg, die wird ja schon abgefragt, fehlen noch zwei die man prüfen muss. Und dann einfach bei
    Code: PHP  [Auswählen]
    AND pvpe.language_id = '".(int) $_SESSION['languages_id']."'
    das pvpe mal durch das kürzel der anderen Tabelle ersetzen, das eine language_id enthält.

    Iterative Fehlersuche  :-D

    Eventuell
    1 Antworten
    2025 Aufrufe
    08. April 2013, 11:40:03 von jannemann
    15 Antworten
    10318 Aufrufe
    20. Juni 2010, 18:31:26 von web28
    9 Antworten
    3580 Aufrufe
    08. Februar 2016, 11:15:36 von Swidel
    10 Antworten
    4990 Aufrufe
    16. März 2009, 00:40:41 von Anonym
               
    anything