我为移动应用程序开发了Prestashop Web服务。Add order web service
我可以连接用户,创建用户帐户,创建购物车,但我无法创建订单。
我有以下错误:
HTTP XML response is not parsable: array (0 => LibXMLError::__set_state(array('level' => 3, 'code' => 9, 'column' => 64, 'message' => 'Input is not proper UTF-8, indicate encoding ! Bytes: 0x95 0x08 0x77 0xE2 ', 'file' => '', 'line' => 778,)), 1 => LibXMLError::__set_state(array('level' => 3, 'code' => 9, 'column' => 65, 'message' => 'PCDATA invalid Char value 8 ', 'file' => '', 'line' => 778,)), 2 => LibXMLError::__set_state(array('level' => 3, 'code' => 9, 'column' => 77, 'message' => 'PCDATA invalid Char value 12 ', 'file' => '', 'line' => 778,)), 3 => LibXMLError::__set_state(array('level' => 3, 'code' => 9, 'column' => 78, 'message' => 'PCDATA invalid Char value 14 ', 'file' => '', 'line' => 778,)), 4 => LibXMLError::__set_state(array('level' => 3, 'code' => 64, 'column' => 51, 'message' => 'XML declaration allowed only at the start of the document ', 'file' => '', 'line' => 14954,)), 5 => LibXMLError::__set_state(array('level' => 3, 'code' => 64, 'column' => 51, 'message' => 'XML declaration allowed only at the start of the document ', 'file' => '', 'line' => 17864,)), 6 => LibXMLError::__set_state(array('level' => 3, 'code' => 64, 'column' => 51, 'message' => 'XML declaration allowed only at the start of the document ', 'file' => '', 'line' => 20773,)), 7 => LibXMLError::__set_state(array('level' => 3, 'code' => 64, 'column' => 33, 'message' => 'XML declaration allowed only at the start of the document ', 'file' => '', 'line' => 21368,)),)
我试图改变网页的编码,UTF-8,但没有什么可以做。
这是我的PHP:
<?php
// Here's how you create a webservice call:
define('PS_SHOP_PATH', 'localhost:8888/MON_SITE');
define('PS_WS_AUTH_KEY', 'MA_CLEF');
define('DEBUG', true);
require_once('PSWebServiceLibrary.php');
try {
$webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG);
$opt = array('resource' => 'orders');
$xml = $webService->get(array('url' => PS_SHOP_PATH.'/api/orders?schema=synopsis'));
$xml->children()->children()->id_address_delivery = 6;
$xml->children()->children()->id_address_invoice = 6;
$xml->children()->children()->id_cart = 136;
$xml->children()->children()->id_currency = 1;
$xml->children()->children()->current_state = 1;
$xml->children()->children()->id_lang = 1;
$xml->children()->children()->id_customer = 1;
$xml->children()->children()->id_carrier = 0;
$xml->children()->children()->total_paid = '56973';
$xml->children()->children()->total_paid_real = '56973';
$xml->children()->children()->total_paid_tax_excl = '56973';
$xml->children()->children()->total_paid_tax_incl = '56977';
$xml->children()->children()->total_products = 1338;
$xml->children()->children()->total_products_wt = 1337;
$xml->children()->children()->conversion_rate = '1';
$xml->children()->children()->secure_key = md5('-1');
$xml->children()->children()->valid = 1;
$xml->children()->children()->module = 'Cheque';
$xml->children()->children()->payment = 'cheque';
$xml->children()->children()->current_state = 1;
unset($xml->children()->children()->id);
unset($xml->children()->children()->date_add);
unset($xml->children()->children()->date_upd);
unset($xml->children()->children()->associations);
unset($xml->children()->children()->delivery_date);
unset($xml->children()->children()->invoice_date);
unset($xml->children()->children()->total_discounts_tax_incl);
unset($xml->children()->children()->total_discounts_tax_excl);
$xml = $webService->add(array('resource' => 'orders',
'postXml' => $xml->asXML()
));
$resources = $xml->children()->children();
echo "Successfully added order.".$resources->id;
}
catch (PrestaShopWebserviceException $ex)
{
// Here we are dealing with errors
$trace = $ex->getTrace();
if ($trace[0]['args'][0] == 404) echo 'Bad ID';
else if ($trace[0]['args'][0] == 401) echo 'Bad auth key';
else echo 'Other error<br />'.$ex->getMessage();
}
?>
的对象被创建但我现在收到这个错误:'“HTTP XML响应为不能分析:阵列(\ N 0 => \ n LibXMLError :: __ set_state( array'(\ n'level'=> 3,\ n'code'=> 4,\ n'列'=> 1,\ n'message'=>'预期开始标记,\'未找到'\' \ n',\ n'file'=>'',\ n'line'=> 2,\ n)),\ n)“',有什么想法? – user1269586
我得到了同样的问题。我在通过网络检查模板themes/default-bootstrap/mails/en/order_conf_product_list.txt时出现语法错误时出现错误“。我认为在通过管理员更改邮件模板时文件已更改此问题已在Web服务,修复了order_conf_product_list.txt文件后,请检查您是否可以通过网络创建订单 – alamelu