Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware
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: Wie orders_products um zwei zusätzliche Felder ergänzen?

    elliot

    • Neu im Forum
    • Beiträge: 33
    Hallo!

    Habe jetzt schon wie lange gegooglet und auch hier im Forum schon emsig geschaut, weil ich gerne die Tabelle orders_products um zwei zusätliche Felder erweitern möchte, jedoch leider nix gefunden habe außer so leichte Ansätze.

    Vielleicht kann mir hier ja jemand weiterhelfen, in welchen Dateien man wo und wie welchen Code ergänzen muss.  :/

    Und zwar möchte ich in der Tabelle orders_products noch das Feld manufactures_name einfügen (Daten aus Tabelle manufactures) und noch ein weiteres Feld products_printer (Daten aus Tabelle products), das ich neu angelegt habe. Diese Daten will ich dann an die WaWi übergeben, was ich mittlerweile aber schon weiß, wie das dann ginge.

    Ich hänge jetzt halt nur noch an dem Schritt, in welchen Dateien (orders.php ?) ich wo welchen Code ergänzen müsste, damit die zusätzlichen Felder in der orders_products mit den Daten gefüllt werden, weil komm da im Moment überhaupt nicht weiter  :?  

    Würde mich wirklich sehr freuen, wenn mir da jemand weiterhelfen könnte.

    Grüße
    Elliot



    Linkback: https://www.modified-shop.org/forum/index.php?topic=5333.0

    hendrik

    • Experte
    • Beiträge: 2.038
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #1 am: 28. April 2010, 05:25:13
    Erstmal mit phpmyadmin die DB-Tabelle orders_products um die genannten Felder ergänzen.

    Die Tabelle orders_products wird bei der Bestellbildung mit Werten gefüllt. Dies geschieht in Datei checkout_process.php.

    Zeile 253 ca.

    Code: PHP  [Auswählen]
            $sql_data_array = array ('orders_id' => $insert_id, ..........
            xtc_db_perform(TABLE_ORDERS_PRODUCTS, $sql_data_array);
    Die zusätzlichen Daten ermitteln (manufacturers_name, products_printer) und die Zeile $sql_data_array = .... um diese Einträge ergänzen.

    Gruß
    Hen

    elliot

    • Neu im Forum
    • Beiträge: 33
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #2 am: 28. April 2010, 12:31:08
    Hallo Hen!

    Danke erstmal für die hilfreichen Infos  :)

    Also die zusätzlichen Felder in der Tabelle orders_products habe ich erstellt und in der Zeile $sql_data_array =.... würde ich mir die Ergänzung auch noch zutrauen, weil sind ja schon Beispiele vorhanden.

    Wo ich jetzt aber absolut passen muss ist, wie das geht mit den zusätzlichen Daten (manufacturers_name, products_printer) ermitteln? Ich finde in der checkout_process.php leider keine Stelle, die als Beispiel dienen könnte, und mir ist es auch ein Rätsel, woher eigentlich die Daten in der Zeile $sql_data_array =.... kommen  :?

    Könnte man diese Daten denn in der checkout_process.php ermitteln oder müsste das dann in einer anderen Datei gemacht werden?

    Muss aber noch dazu sagen, dass ich mit PHP/SQL nicht grad bewandert bin und bräuchte sozusagen 'ne idiotensichere Anleitung für Dummis, wo welcher Code reinmüsste  ;)

    Wäre echt super, wenn du mir da noch etwas helfen könntest?

    Gruß
    Elliot

    hendrik

    • Experte
    • Beiträge: 2.038
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #3 am: 28. April 2010, 14:19:48
    manufacturers_name kann ich mir denken was du meinst. Bei products_printer keine Ahnung. Die Wertermittlung musste dir selber schreiben.

    Hier ne einfache sql-Abfrage für manfacturers_name. Die sql_data_array-Zeile etwas übersichtlicher formatiert und die zusätzlichen Arrayelemente eingefügt.

    Code: PHP  [Auswählen]
      // manufacturers_name ermitteln
      $sql = "select manufacturers_name
              from "
    .
                TABLE_MANUFACTURERS." m,".
                TABLE_PRODUCTS." p
              where
                m.manufacturers_id = p.manufacturers_id
                and p.products_id = '"
    .xtc_get_prid($order->products[$i]['id']."'";
      $res = xtc_db_query($sql);
      if( $data=xtc_db_fetch_array($res) ) {
        $manufacturers_name=$data['manufacturers_name');
      } else {
        $manufacturers_name='';
      }

      // products_printer ermitteln
      $products_printer = 'blabla irgendwas';

      $sql_data_array = array( 'orders_id' => $insert_id,
                               'products_id' => xtc_get_prid($order->products[$i]['id']),
                               'products_model' => $order->products[$i]['model'],
                               'products_name' => $order->products[$i]['name'],
                               'products_shipping_time'=>$order->products[$i]['shipping_time'],
                               'products_price' => $order->products[$i]['price'],
                               'final_price' => $order->products[$i]['final_price'],
                               'products_tax' => $order->products[$i]['tax'],
                               'products_discount_made' => $order->products[$i]['discount_allowed'],
                               'products_quantity' => $order->products[$i]['qty'],

                               // -- einfuegung beginn ---------
                               'manufacturers_name' => $manufacturers_name,
                               'products_printer' => $products_printer,
                               // -- einfuegung ende ---------

                               'allow_tax' => $_SESSION['customers_status']['customers_status_show_price_tax']);
     
    Das ist jetzt aus der hohlen Hand getippt - ungetestet. Das Vergnügen überlass ich dir ;-)

    Gruß
    Hendrik

    elliot

    • Neu im Forum
    • Beiträge: 33
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #4 am: 28. April 2010, 19:15:58
    Hallo Hen!

    Vielen Dank, dass du mir da nochmal weitergeholfen hast  :)
    WOW, und das hast du echt mal so ganz locker aus der hohlen Hand getippt  :O

    Hab das jetzt eben mal ausprobiert und nur mal den Code für manufacturers_name ermitteln eingefügt und natürlich noch den entsprechenden Code für manufacturers_name in der sql_data_array-Zeile.

    Wollte dann mal eine Testbestellung machen, bekomme aber nach dem Betätigen des Bestell-Buttons eine Fehlermeldung:
    Parse error: syntax error, unexpected ';' in /is/htdocs/wp1017853_KYN2CHA58O/www/checkout_process.php on line 256
    Die Zeile 256 entspricht in der checkout_process.php nun:

    Code: PHP  [Auswählen]
    and p.products_id = '".xtc_get_prid($order->products[$i]['id']."'";
    Kann mir zwar in etwa denken, was die Zeile für eine Funktion hat, aber kenne mich leider überhaupt nicht mit der Syntax aus und ob hier nun noch ein (kleiner) Fehler drin ist. Scheint vielleicht was mit dem Semikolon nicht zu stimmen?

    Könntest du da vielleicht nochmal kurz drüberschauen? Wäre echt toll.

    Gruß
    Elliot

    hendrik

    • Experte
    • Beiträge: 2.038
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #5 am: 28. April 2010, 21:34:02
    Ein paar Klammern waren falsch gesetzt.

    Code: PHP  [Auswählen]
    // manufacturers_name ermitteln
    $sql = "select manufacturers_name
            from "
    .
              TABLE_MANUFACTURERS." m,".
              TABLE_PRODUCTS." p
            where
              m.manufacturers_id = p.manufacturers_id
              and p.products_id = '"
    .xtc_get_prid($order->products[$i]['id'])."'";
    $res = xtc_db_query($sql);
    if( $data=xtc_db_fetch_array($res) ) {
      $manufacturers_name=$data['manufacturers_name'];
    } else {
      $manufacturers_name='';
    }

    // products_printer ermitteln
    $products_printer = 'blabla irgendwas';

    $sql_data_array = array( 'orders_id' => $insert_id,
                             'products_id' => xtc_get_prid($order->products[$i]['id']),
                             'products_model' => $order->products[$i]['model'],
                             'products_name' => $order->products[$i]['name'],
                             'products_shipping_time'=>$order->products[$i]['shipping_time'],
                             'products_price' => $order->products[$i]['price'],
                             'final_price' => $order->products[$i]['final_price'],
                             'products_tax' => $order->products[$i]['tax'],
                             'products_discount_made' => $order->products[$i]['discount_allowed'],
                             'products_quantity' => $order->products[$i]['qty'],

                             // -- einfuegung beginn ---------
                             'manufacturers_name' => $manufacturers_name,
                             'products_printer' => $products_printer,
                             // -- einfuegung ende ---------

                             'allow_tax' => $_SESSION['customers_status']['customers_status_show_price_tax']);
     

    elliot

    • Neu im Forum
    • Beiträge: 33
    Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #6 am: 29. April 2010, 14:15:19
    Hallo Hendrik!

    Wollte mich nur noch mal bei dir bedanken, hat jetzt auf Anhieb geklappt und das mit dem products_printer hab ich Dank deiner super Vorlage auch hinbekommen. Ich bin happy  :B

    Danke nochmals!!!!!

    Gruß
    Elliot

    ARS

    • Fördermitglied
    • Beiträge: 345
    • Geschlecht:
    Re: Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #7 am: 10. September 2020, 19:35:53
    Hallo zusammen,

    ich häng mich an diesem Thread mal dran:

    Bei mir ist dieselbe "Problematik" - zwei Felder in der orders_products sollen hinzugefügt werden.
    Ich habe zwei Merkmale bei den products hinzugefügt, einmal products_klasse und einmal products_fkat.

    die checkput_process.php habe ich demnach so erweitert:

    Code: PHP  [Auswählen]
    // Produkt Klasse und KAT_ermitteln
    $sql = "select products_fkat,
                   products_klasse
            from "
    .
              TABLE_PRODUCTS."
            where
     products_id = '"
    .xtc_get_prid($order->products[$i]['id'])."'";
    $res = xtc_db_query($sql);
    if( $data=xtc_db_fetch_array($res) ) {
    $products_fkat=$data['products_fkat'];
    $products_klasse=$data['products_klasse'];
    } else {
      $products_fkat='';
        $products_klasse='';
    }

        $sql_data_array = array ( 'orders_id' => $insert_id,
                                  'products_id' => xtc_get_prid($order->products[$i]['id']),
                                  'products_model' => $order->products[$i]['model'],
                                  'products_name' => $order->products[$i]['name'],
                                                               // -- einfuegung beginn ---------
                                  'products_klasse' => $products_klasse,
                                  'products_fkat' => $products_fkat,
                                                              // -- einfuegung ende ---------
                                  'products_shipping_time'=>$order->products[$i]['shipping_time'],
                                  'products_price' => $order->products[$i]['price'],
                                  'final_price' => $order->products[$i]['final_price'],
                                  'products_tax' => $order->products[$i]['tax'],
                                  'products_discount_made' => $order->products[$i]['discount_allowed'],
                                  'products_quantity' => $order->products[$i]['qty'],
                                  'allow_tax' => $_SESSION['customers_status']['customers_status_show_price_tax'],
                                  'products_stock' => $order->products[$i]['qty'] + $stock_left
                                  );

    Aber es wird in den beiden Feldern nix gespeichert - auch keine fehlermeldung oder sowas  :nixweiss: ... auf welchem Schlauch steh ich? Kann mir da jemand helfen bitte?

    Danke schonmal, gruss
    Robert

    Q

    • Fördermitglied
    • Beiträge: 1.536
    Re: Wie orders_products um zwei zusätzliche Felder ergänzen?
    Antwort #8 am: 12. September 2020, 11:36:32
    24 Antworten
    4555 Aufrufe
    26. Dezember 2018, 11:22:58 von Modulfux
    12 Antworten
    6175 Aufrufe
    21. Januar 2013, 14:31:15 von falcon78
    5 Antworten
    2092 Aufrufe
    06. April 2020, 09:05:17 von fjs
    0 Antworten
    1429 Aufrufe
    04. August 2017, 07:56:25 von Tele09
               
    anything