0

誰かが問題の問題を手伝ってくれて本当に感謝しています。基本的に2セットのデータを取り、それらを使用してSQLステートメントを作成するこのメソッドがあるので、私はMagentoにいます。

private function _getInsertSql($data, $itemData)
{

    $sql = 'insert into orders_headers (';
    $keys = array_keys($data);
    $sql .= implode(', ', $keys);
    $sql .= ') values (';
    foreach($data as $value) {
        $type = $value['type'];
        $vv = $value['value']; 
        if ($type == 'number') {
            $sql .= $vv;
        } else {
            $sql .= $this->_db->quote($vv);
        }
        $sql .= ',';
    }
    $sql = substr($sql, 0, strlen($sql)-1);
    $sql .= ');';

    $first = 0;
    $sql .= 'insert into orders_lines (';
    foreach($itemData as $data) {
        if ($first <= 0) {
            $keys = array_keys($data);
            $sql .= implode(', ', $keys);
            $sql .= ') values (';
        } else {
            $sql .= '('; 
        }
        foreach($data as $value) {
            $type = $value['type'];
            $vv = $value['value']; 
            if ($type == 'number') {
                $sql .= $vv;
            } else {
                $sql .= $this->_db->quote($vv);
            }
            $sql .= ',';
        }
        $sql = substr($sql, 0, strlen($sql)-1);
        $sql .= '),';
        $first++;
    }

    $sql = substr($sql, 0, strlen($sql)-1);

    $sql .= ';';
    Mage::log("START" .$sql . "END", NULL, 'sql.log');
    return $sql;
}

最後にご覧のとおり、.sql をログアウトしていますが、奇妙なことに、同じクエリが 2 回生成されます。したがって、DB に同じ行を 2 回挿入します。

一番上にループしてクエリを再度作成する場所を、私の人生では見ることができません。

出力SQLは次のとおりです。

2013-06-11T15:37:45+00:00 DEBUG (7): 開始、orders_headers に挿入 (orderID、日時、IP、顧客 ID、名、姓、住所 1、住所 2、町、郡、国、郵便番号、電話、ファックス、メール、会社、配達名、配達住所1、配達住所2、配達町、配達国、配達国、配達郵便番号、配達電話、商品合計、発送合計、税合計、割引合計、注文状態、注文ステータス、注文コメント、注文保存時間、ステータス、発送方法、支払いID、支払い名、支払い日、発送ID、注文メモ、 paymentNameNative、shippingMethodNative、referURL、accTypeID、offerCode、randID、e_website、e_status、e_purchaseordref、e_statuschk、e_accepted) 値 ('100004952'、'20130611153744'、'127.0.0.1'、0、'TES'、'S'、'S ','','S','','GB','S','SA','','S@gmila.com','','TES','S','','S','','GB','S','SA',28.88 ,7.25,4.81,0,'new','pending_awaiting_payment','','20130611153745','P','udropship_default',5,'小切手','',0,'','小切手','udropship_default ','master/site/',0,'','100004952','master/site/','ZZZ888','','2106',''); xm1_orders_lines (orderID, productID, code, name、qty、weight、price、nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,'UGWA050','Stainless Steel'','TES S','S','','S','','GB','S','SA',28.88,7.25,4.81,0,'new','pending_awaiting_payment', '','20130611153745','P','udropship_default',5,'小切手','',0,'','小切手','udropship_default','master/site/',0,'',' 100004952','master/site/','ZZZ888','','2106','');insert into xm1_orders_lines (orderID, productID, code, name, qty, weight, price, nameNative, taxamount, ooprice, ootaxamount 、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,'UGWA050','Stainless Steel'','TES S','S','','S','','GB','S','SA',28.88,7.25,4.81,0,'new','pending_awaiting_payment', '','20130611153745','P','udropship_default',5,'小切手','',0,'','小切手','udropship_default','master/site/',0,'',' 100004952','master/site/','ZZZ888','','2106','');insert into xm1_orders_lines (orderID, productID, code, name, qty, weight, price, nameNative, taxamount, ooprice, ootaxamount 、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,'UGWA050','Stainless SteelS','SA',28.88,7.25,4.81,0,'new','pending_awaiting_payment','','20130611153745','P','udropship_default',5,'小切手','',0,' ','小切手','udropship_default','master/site/',0,'','100004952','master/site/','ZZZ888','','2106','');insert into xm1_orders_lines (orderID、productID、code、name、qty、weight、price、nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) 値 ('100004952'、2106、'UGWA050'、'Stainless鋼S','SA',28.88,7.25,4.81,0,'new','pending_awaiting_payment','','20130611153745','P','udropship_default',5,'小切手','',0,' ','小切手','udropship_default','master/site/',0,'','100004952','master/site/','ZZZ888','','2106','');insert into xm1_orders_lines (orderID、productID、code、name、qty、weight、price、nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) 値 ('100004952'、2106、'UGWA050'、'Stainless鋼',0,'','小切手','udropship_default','master/site/',0,'','100004952','master/site/','ZZZ888','','2106',' '); xm1_orders_lines (orderID、productID、code、name、qty、weight、price、nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,' UGWA050','ステンレス',0,'','小切手','udropship_default','master/site/',0,'','100004952','master/site/','ZZZ888','','2106',' '); xm1_orders_lines (orderID、productID、code、name、qty、weight、price、nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,' UGWA050','ステンレスSupplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,'UGWA050','Stainless SteelSupplierCostCurrencyID、order_state、order_status、order_save_time) の値 ('100004952',2106,'UGWA050','Stainless Steel
ワイン アイス バケット、マグナム 9 pt',1,10.0900,16.82,'ステンレス鋼
ワイン アイス バケツ、マグナム 9 pt',3.36,0,0,5,10.0900,1,'new','pending_awaiting_payment','20130611153745');END 2013-06-11T15:37:45+00:00 DEBUG ( 7): STARTinsert into orders_headers (orderID、datetime、ip、customerID、forename、surname、address1、address2、町、county、country、postcode、telephone、fax、email、company、deliveryName、deliveryAddress1、deliveryAddress2、deliveryTown、deliveryCounty、deliveryCountry 、deliveryPostcode、deliveryTelephone、goodTotal、shippingTotal、taxTotal、discountTotal、order_state、order_status、order_comments、order_save_time、status、shippingMethod、paymentID、paymentName、paymentDate、shippingID、orderNotes、paymentNameNative、shippingMethodNative、referURL、accTypeID、offerCode、randID、e_website、e_status 、e_purchaseordref、e_statuschk、e_accepted) 値 ('100004952'、'20130611153744','127.0.0.1',0,'TES','S','S','','S','','GB','S','SA','','S @gmila.com','','TES S','S','','S','','GB','S','SA',28.88,7.25,4.81,0,'new ','pending_awaiting_payment','','20130611153745','P','udropship_default',5,'小切手','',0,'','小切手','udropship_default','master/site/', 0,'','100004952','/master/site/','ZZZ888','','2106',''); xm1_orders_lines に挿入 (注文 ID、商品 ID、コード、名前、数量、重量、価格、 nameNative、taxamount、ooprice、ootaxamount、supplierID、supplierCost、supplierCostCurrencyID、order_state、order_status, order_save_time) 値 ('100004952',2106,'UGWA050','Stainless Steel
ワイン アイス バケット、マグナム 9 pt',1,10.0900,16.82,'ステンレス スチール
ワイン アイス バケット、マグナム 9 pt',3.36,0,0,5,10.0900,1,'new','pending_awaiting_payment','20130611153745' );終わり

誰でも彼らの助けを提供できますか?

ありがとう

4

2 に答える 2