我尝试通过网络服务添加产品,我收到以下错误代码:
RETURN HTTP BODY
<?xml version="1.0" encoding="UTF-8"?>
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<errors>
<error>
<message><![CDATA[Internal error. To see this error please display the PHP errors.]]></message>
</error>
</errors>
</prestashop>
我正在搜索2天但没有。请有人帮帮我吗? 我的代码如下。
define('DEBUG', true);
define('_PS_DEBUG_SQL_', true);
define('PS_SHOP_PATH', 'http://mywebsiteinlocalhost.gr/dev...shop/trunk/src/');
define('PS_WS_AUTH_KEY', 'CBYB5G5UVRA7FCN7JK2WZ625DFWG8SK3');
require_once ('./PSWebServiceLibrary.php');
$webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG);
$opt = array('resource' => 'products');
$xml = $webService->get(array('url' => PS_SHOP_PATH.'/api/products?schema=synopsis'));
$resources = $xml->children()->children();
unset($resources->position_in_category);
unset($resources->manufacturer_name);
$resources->price = '1000';
$resources->active = '1';
$resources->quantity = '50';
$resources->link_rewrite = 'blabla';
$resources->name->language[0][0] = 'blabla';
$resources->description->language[0][0] = '<p>blabla</p>';
$resources->description_short->language[0][0] = 'blabla';
$resources->associations = '';
$opt = array('resource' => 'products');
$opt['postXml'] = $xml->asXML();
$xml = $webService->add($opt);
答案 0 :(得分:2)
资源产品对于Prestashop非常重要。 我已经快速检查了架构'概要'(... / api / products /?schema = synopsis)。有12个字段标记为必填项! 在您的示例中,例如缺少默认父类别! 这就是它无效的原因之一!
答案 1 :(得分:2)
在PrestaShop 1.5中 从配置文件夹
打开defines.inc.php
找到
define('_PS_MODE_DEV_', false);
更改 false - &gt; true 它会开始显示确切错误。
由于
而发生此错误$resources->quantity = '50';
您无法从xml修改数量。只需评论这一行。我希望它对你有用。
答案 2 :(得分:0)
检查你给出了正确PS_SHOP_PATH和PS_WS_AUTH_KEY的天气。
并检查prestashop后端的权限。
答案 3 :(得分:0)
要查看真实的webservice错误消息,请在config / config.inc.php
中激活PHP错误显示 @ini_set(&#39; display_errors&#39;,&#39; on&#39;);
define(&#39; _PS_DEBUG_SQL _&#39;,true);