php循环进行编辑,但是如何识别每个要在循环内进行编辑的记录?

问题描述

| 我有一个php页面,该页面可拉出包含已订购商品门户的订单。 每个订购的商品都会循环并通过XML发送,以便从Metasite中删除。 在循环中,Metasite返回一个响应,我想将其添加到数据库中项目的状态。 这就是我卡住的地方- 我不知道如何在循环内获取代码以标识要添加/编辑的项目的记录。 到目前为止,这是代码-
<?php 
require_once(\'Connections/invoices.php\');
require_once(\'MetaSiteBooks/post_xml.php\');

$ids_find = clone($invoices);
$ids_find->layout = \'orders\';
$ids_findCriterions = array(\'orderID\'=>$_REQUEST[\'orderid\'],);
foreach($ids_findCriterions as $key=>$value) {
    $ids_find->AddDBParam($key,$value);
}

fmsSetPage($ids_find,\'ids\',35); 
$ids_result = $ids_find->FMFind(); 

if( is_a($ids_result,\'FX_Error\') || $ids_result[\'errorCode\'] != \"0\")   
    fmsTrapError($ids_result,\"error.php\"); 

fmsSetLastPage($ids_result,35); 
$ids_row = current($ids_result[\'data\']);
$ids_row_key = key($ids_result[\'data\']);
$ids_orderlineitem_portal_row = 0;
$ids_orderpaypalvars_portal_row = 0;
好的,这样就可以标识包含订购商品列表的记录。 接下来开始循环-
$ids_orderlineitem_portal_rownum = 1;
foreach($ids_row[\'order_line_item::bookID\'] as     
           $ids_orderlineitem_portal_row=>$ids_orderlineitem_portal)
{
    $xml =
    \'<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>
     <inventoryUpdateRequest version=\"1.0\">
     <action name=\"bookupdate\">
     </action>
     <transactionType>delete</transactionType>
     <vendorBookID>\' . $ids_row[\'order_line_item::bookID\']
                  [$ids_orderlineitem_portal_row].\'</vendorBookID>
    </inventoryUpdateRequest>\';
    $url =\'https://inventoryupdate.metasite.com\';
    $port = 80;
    $response = xml_post($xml,$url,$port);    
    $data = simplexml_load_string($response);
    $code = (string) $data->Metasite>code;
XML已发送并响应。接下来,我要将响应代码添加到我的商品的记录中-
    $inventory_status_edit = clone($invoices);
    $inventory_status_edit->layout = \'order_line_item\';
    $inventory_status_edit->AddDBParam(\'-recid\',$ids_row[\'order_line_item::bookID\'][$ids_orderlineitem_portal_row]);
这就是我遇到的问题,DBParam不正确。无论如何,这是其余的代码-
    $inventory_status_fields =  
              array(\'Metasite_status\'=>\'$code\',\'inventory_status\'=>\'dltd\',);

    foreach ( $inventory_status_fields as $key=>$value) {
             $inventory_status_edit->AddDBParam($key,$value);
            }

$inventory_status_result = $inventory_status_edit->FMEdit(); 

    if(is_a($inventory_status_result,\"FX_Error\") || 
            $inventory_status_result[\'errorCode\'] != \"0\") 
         fmsTrapError($inventory_status_result,\"error1.php\"); 

$inventory_status_row = current($inventory_status_result[\'data\']);
$inventory_status_row_key = key($inventory_status_result[\'data\']); 

    if($ids_orderlineitem_portal_rownum == 0) 
         break; 
    else 
        $ids_orderlineitem_portal_rownum++;
}//portal_end
?>
在此先感谢您的帮助!     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...