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: Neues Datenfeld in admin/orders.php

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Neues Datenfeld in admin/orders.php
    am: 04. Dezember 2019, 16:48:24
    Hallo zusammen,

    analog zur Anleitung https://www.modified-shop.org/wiki/Tutorial:_Zus%C3%A4tzliche_Datenfelder_Artikel_(modified_shop_106) bin ich auf der Suche nach einer Anleitung für zusätzliche Datenfelder in der admin/orders.php.

    Was ich benötige, ist ein einfaches Feld, in der ich eine interne Information zur Bestellung hinterlegen kann (Memofunktion und Kommentar fallen aus)
    Es geht hier lediglich um Zahlen die wir intern für die Bearbeitung benötigen und in der Maske bei der Bestellung abspeichern müssten.
    Hat jemand eine Idee oder Hilfestellung hierzu? Gern auch gegen Bezahlung - danke :-)

    Grüße
    Robert

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

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #1 am: 05. Dezember 2019, 16:35:30
    Hallo zusammen,

    ich schieb das nochmal bissl an ...

    Also die Felder habe ich in die orders reinbekommen - sieht so aus:

    Zunächst oben:

    Code: PHP  [Auswählen]
    // Paket
    $paket = array();
    $paket_query = xtc_db_query("SELECT paket
                                      FROM "
    .TABLE_ORDERS."");
    while ($paket = xtc_db_fetch_array($paket)) {
            $paket[] = array('paket' => $paket['paket']);
    }

    Weiter unten dann:

    Code: PHP  [Auswählen]
            case 'insertpaket':
                    $oID = (int)$_GET['oID'];
                    $paket = xtc_db_prepare_input($_POST['paket']);
          $sql_data_array = array('paket' => $paket);
          xtc_db_perform(TABLE_ORDERS,$sql_data_array);
                    xtc_redirect(xtc_href_link(FILENAME_ORDERS, xtc_get_all_get_params(array('action')).'action=edit'));              
                    break;

    und dann:

    Code: PHP  [Auswählen]
          <!-- BOC Pakete BLOCK -->
          <div class="heading">Pakete</div>
          <?php echo xtc_draw_form('orders', FILENAME_ORDERS, xtc_get_all_get_params(array('action')) . 'action=insertpaket'); ?>
          <table cellspacing="0" cellpadding="5" class="table borderall">
            <tr>          
                    <td class="smallText" align="center" style="width:150px;"><strong><?php echo TEXT_PAKET; ?></strong></td>
              <td class="smallText" align="center" style="width:100px;"><strong>Anzahl einfügen</strong></td>
                                <td class="smallText" align="center"><strong></strong></td>
            </tr>
            <tr>
                    <td class="smallText" align="center"><?php echo ($order->info['paket']); ?></td>
              <?php
                  echo '<td class="smallText" align="center">'.xtc_draw_input_field('paket', 'style="width: 99%"', $order->info['paket']).'</td>';
              ?>
              <td class="smallText" align="center">
                  <input class="button" type="submit" value="<?php echo BUTTON_INSERT; ?>">

              </td>
             
            </tr>
          </table>
          </form>
          <!-- EOC Pakete BLOCK -->

    In der Datenbank habe ich ein Feld namens "paket" in die Tabelle "orders" eingefügt.

    Sieht wunderbar aus alles, nur die Eingabe wird nicht in das Feld "paket" gespeichert.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Ja ich weiß, die Experten werden jetzt hier und da sicher die Hände über den Kopf zusammenschlagen, aber ich bin weder PHP- noch ein Datenbankprofi - Asche auf mein Haupt  :crazy:

    Wäre trotzdem schön wenn mir der ein oder andere unter die Arme greifen könnte. Herzlichen Dank.

    Robert

    Bonner

    • Fördermitglied
    • Beiträge: 848
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #2 am: 05. Dezember 2019, 17:36:24
    Ich bin auch nicht der grosse Experte, aber wie mir scheint, hast Du den letzten Teil von Anleitung, die vor dem Abschnitt "Frontend" steht, nicht gemacht.

    Du müsstest wohl in admin/includes/classes/order.php dies einfügen:
    Code: PHP  [Auswählen]
    define('ADD_PRODUCTS_FIELDS','NAME DEINES FELDES');

    Bonner

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #3 am: 05. Dezember 2019, 19:25:00
    Danke dir Bonner,

    in der 1.06 ist die admin/includes/classes/order.php anders:

    Code: PHP  [Auswählen]
    defined( '_VALID_XTC' ) or die( 'Direct Access to this location is not allowed.' );
    include(DIR_FS_CATALOG.DIR_WS_CLASSES.'order.php'); // modified eCommerce Shopsoftware 1.06: Using frontend class
    ?>

    Dann sollte es also in der includes/classes/order.php sein - da habe ich den Eintrag gemacht:

    Code: PHP  [Auswählen]
    $order['order_id'] = $order_id;
          $this->info = array('order_id' => $order['order_id'], //DokuMan - 2011-08-31 - fix order_id assignment
          .....
          .....
          u.s.w.
         'paket' => $order['paket'],

     

    Das funktioniert aber irgendwie nicht, er speichert nicht in rein.

    Robert

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #4 am: 07. Dezember 2019, 13:21:47
    Hallo nochmal zusammen,

    wirklich niemand hier der mir helfen kann dabei?  :-(

    Schade .....

    Trotzdem allen eine schöne Vorweihnachtszeit

    Robert

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #5 am: 08. Dezember 2019, 22:48:07
    Nach Stunden und tagelangem rumodoktoren hab ichs hinbekommen.

    Der Thread kann als erledigt markiert werden :-)

    Danke.

    Viol

    • Fördermitglied
    • Beiträge: 2.209
    Re: Neues Datenfeld in admin/orders.php
    Antwort #6 am: 09. Dezember 2019, 19:37:08
    Dieses Forum lebt eigentlich davon, dass  Problemlösungen auch Teil des Threads werden. Und selbst dann (besonders) , wenn man das sogar ohne Hilfe hinbekommen hat. Lass doch alle an Deiner Lösung teilhaben..
    (ich selbst brauche das übrigens nicht)

    ARS

    • Fördermitglied
    • Beiträge: 334
    • Geschlecht:
    Re: Neues Datenfeld in admin/orders.php
    Antwort #7 am: 09. Dezember 2019, 20:46:18
    Danke für den Hinweis und die Aufklärung Viol.

    Wenn ich erneut ein Wochenende Zeit habe um alles nochmal nachzubauen, dann werde ich mitschreiben.

    Nein ganz im Ernst: Wie man oben schon entnehmen kann, bin ich alles andere als ein Profi in diesem Bereich. Hab hier kopiert, dort irgendwas reingesetzt etc. etc. ohne jetzt im nachhinein sagen zu können, was das alles war, vor allem was völlig überflüssig war (ich befürchte das wird einiges sein). Irgendwann nach etlichen Stunden aufgeteilt auf Tage habe ich noch einen SQL Befehl irgendwo abgekupfert und dann ging es plötzlich.

    Also eine echte Lösung mit Lösungsweg kann ich nicht wirklich hier anbieten.

    Ganz grob wars in etwa so:
    Datenbankfeld in die Tabelle orders einfügen - in meinem Fall wars das Feld namens "paket".

    In den admin/orders.php habe ich wie oben beschrieben die Felder eingebaut. Wichtig war dann der Teil, wos plötzlich geklappt hat:

    Code: PHP  [Auswählen]
            case 'insertpaket':
                    $oID = (int)$_GET['oID'];
                    $paket = xtc_db_prepare_input($_POST['paket']);
          $sql_data_array = array('paket' => $paket);
                    xtc_db_query("UPDATE ".TABLE_ORDERS." SET paket = '".$paket."'  WHERE orders_id = '" . (int)$_GET['oID'] . "' ");
                    xtc_redirect(xtc_href_link(FILENAME_ORDERS, xtc_get_all_get_params(array('action')).'action=edit'));              
                    break;

    Mehr kann ich leider dazu auch nicht bieten.

    Gruß
    Robert
    2 Antworten
    2939 Aufrufe
    24. Juli 2012, 15:59:02 von joern42
    2 Antworten
    2486 Aufrufe
    29. September 2013, 06:35:36 von Teichbau
    12 Antworten
    5567 Aufrufe
    20. März 2012, 14:59:35 von vince
    23 Antworten
    12793 Aufrufe
    02. November 2014, 13:46:04 von Tomcraft