创建订单时使用webhook、php更新MS SQL server字段


MS SQL server field update using webhook, php when order created

好的,所以我通过shopify webhook测试中的webhook在我的Web服务器的订单文件夹中获得了order09-05-12-1346847709.xml文件,该文件看起来像

<processing-method nil="true"></processing-method>
  <line-items type="array">
    <line-item>
      <requires-shipping type="boolean">true</requires-shipping>
      <fulfillment-service>manual</fulfillment-service>
      <grams type="integer">5000</grams>
      <price type="decimal">199.99</price>
      <quantity type="integer">1</quantity>
      <sku>SKU2006-001</sku>
      <title>Sledgehammer</title>
      <product-id type="integer" nil="true"></product-id>
      <variant-id type="integer" nil="true"></variant-id>
      <vendor nil="true"></vendor>
      <variant-title nil="true"></variant-title>
      <fulfillment-status nil="true"></fulfillment-status>
      <name>Sledgehammer</name>
      <variant-inventory-management nil="true"></variant-inventory-management>
      <properties type="array">
      </properties>
    </line-item>
    <line-item>
      <requires-shipping type="boolean">true</requires-shipping>
      <fulfillment-service>manual</fulfillment-service>
      <grams type="integer">500</grams>
      <price type="decimal">29.95</price>
      <quantity type="integer">1</quantity>
      <sku>SKU2006-020</sku>
      <title>Wire Cutter</title>
      <product-id type="integer" nil="true"></product-id>
      <variant-id type="integer" nil="true"></variant-id>
      <vendor nil="true"></vendor>
      <variant-title nil="true"></variant-title>
      <fulfillment-status nil="true"></fulfillment-status>
      <name>Wire Cutter</name>
      <variant-inventory-management nil="true"></variant-inventory-management>
      <properties type="array">
      </properties>
    </line-item>
  </line-items>

我所需要的只是选择"sku和qty"值,这样我就可以自动更新到我的ms-sql服务器的数据。我如何使用php做到这一点?我的意思是,我知道如何使用sqlsrv连接到sql服务器,但不知道php代码来选择特定字段的值并将值放入sql服务器

伙计们,我现在绝望了。。。。

非常感谢大家提前

下面是一些PHP代码,它为XML文档中的每个项目获取skuquantity值(这不是在XML文档中搜索特定信息的最佳/最佳/最强大的方法,但它很有效)。既然你没有告诉我们你想如何将它们插入数据库,我就无能为力了。

以下是关于PHP文档对象模型接口的文档,该接口允许操作XML文档。请看一下。

$dom = new DomDocument();
$dom->load('order09-05-12-1346847709.xml');
$itemList = $dom->getElementsByTagName('line-item');
foreach($itemList as $item) {
  $sku='';
  $qty='';
  foreach($item->childNodes as $child) {
    if ($child->localName == 'sku') {
      $sku = $child->textContent;
    }
    if ($child->localName == 'quantity') {
      $qty = $child->textContent;
    }
  }
  echo 'Item SKU: ' . $sku . '<br />';
  echo 'Item quantity: ' . $qty . '<br />';
  // cast to integer: intval($qty)
  echo '<br />';
}