我在互联网上看了一眼,没有找到答案。
基本上我的问题是每当我尝试编辑订单和更改商店时我都会收到SyntaxError:JSON.parse:JSON数据的第1行第1列的数据意外结束在firefox和chrome中的OK我得到了SyntaxError:意外结束输入OK。
有没有人为此找到了“真正的”解决方案,因为我尝试了所有建议,但它们不起作用。从更改api_id到制作辅助API。甚至是.htaccess方法。
答案 0 :(得分:3)
我收到了同样的错误并找到了解决方法:
您现在可以编辑订单状态了!
答案 1 :(得分:2)
我碰巧有相同的更新订单问题。
如果你尝试了互联网上找到的所有可能的解决方案,但没有人工作,那么这个错误可能来自你的服务器提供商。
在我的情况下,问题来自$ curl函数,它经常在opencart 2.0上使用。
您可以将此php文件粘贴到admin / controller / sale /中,然后输入您的网址:http://YOURDOMAIN.com/admin/controller/sale/test.php
<?PHP
echo "a<br/>";
$curl = curl_init();
//http://YOURDOMAIN.com testing"
$aa='Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36 OPR/28.0.1750.48';
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
curl_setopt($curl, CURLOPT_USERAGENT, $aa);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_FORBID_REUSE, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, 'http://YOURDOMAIN.com/index.php?route=api/login');
curl_setopt($curl, CURLOPT_POST, true);
$json = curl_exec($curl);
echo "server link to http://YOURDOMAIN.com/index.php?route=api/login <br/>";
echo "Error Message:<br/>";
print_r(curl_error($curl));
echo "<br/>";
echo "Response:";
echo "<br/>";
print_r($json);
echo "<br/>";
echo "<br/>";
echo "<br/>";
echo "<br/>";
curl_close($curl);
$curl = curl_init();
//http://google.com"
$aa='Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36 OPR/28.0.1750.48';
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
curl_setopt($curl, CURLOPT_USERAGENT, $aa);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_FORBID_REUSE, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, 'http://google.com');
curl_setopt($curl, CURLOPT_POST, true);
$json = curl_exec($curl);
echo "server lint to http://google.com <br/>";
echo "Error Message:<br/>";
print_r(curl_error($curl));
echo "<br/>";
echo "Response:";
echo "<br/>";
print_r($json);
curl_close($curl);
?>
如果您的浏览器消息未显示此
指向http://YOURDOMAIN.com/index.php?route=api/login错误的服务器链接 消息:
响应: { “错误”: “\ u8b66 \ u544a \ uff1a \ u4e0d \ u5339 \ u914d \ u7684 \ u7528 \ u6236 \ u540d \ u6216 \ u5bc6 \ u78bc \ u3002”}
然后您可以要求您的服务器提供商帮助您设置服务器,因为这意味着您的$ curl无法链接到您的localhost并且无法从您的localhost检索数据。
希望这会对你有所帮助!!
答案 2 :(得分:2)
我能够通过3个步骤解决这个问题。在我的情况下,我使用标准(开箱即用的Opencart升级)将我的opencart数据库从1.5x升级到2.x.我也有多线程配置。运行以下步骤后,我能够编辑订单:
使用与旧数据库中使用的管理凭据相同的管理凭据安装OC2(开箱即用,无配置)。导出数据库并在转储文件(sql)中找到INSERT INTO api
值的位置(...行。这是您需要在旧数据库中运行的第一个命令。
更新设置设置值= 1其中key
='config_api_id';
UPDATE store set ssl
= url;但是,如果您正在使用localhost,这可能不起作用。因此,对于测试,我必须将其更改为UPDATE商店集ssl
='http://localhost/';不要忘记最后一个反斜杠。
请注意,您也可以在管理员用户界面上执行这些操作。
答案 3 :(得分:1)
我假设您正在使用opencart 2.x版本。请按照以下步骤进行操作
1)检查你的oc_api(oc是opencart数据库前缀)。应该有一条记录
如果没有,请运行以下查询
INSERT INTO oc_api
(api_id
,username
,firstname
,lastname
,password
,status
,{{1 }},date_added
)价值观
(1, '2uVCDrqPBaq52KKCModEFFc7ILdMbKWulvbEsLkJVJHbm334HGQC5BDxoWlnXUwi', '', '', 'so49tj04Cv6yteAoZaZ3IzAfhYG7qWkOLavvIyejHPHEO7eQEn7mtgUFxT9JXQvwCD9b46gFjlrMGSWvHs1NrECiaHPOaCTNRjk8E64eY0nNVflHgpJrCgH3bw1K1rOf28iXkyquk76F8lNWUexCuzjGzU29pOhq1O3peiy4K6n07jMeeL0QzAZLkuPq0nMuNXmzvLV5GxreUZidCvPXSEmItDAPZ4Pp6Ys2aqOzbgJ9EISV6NCVIAM8ONIrVEqd',1 '2015年1月27日16时38分49秒', '2015年1月27日16时38分49秒');
2)将config_api_id字段搜索到oc_setting表并输入其值1或在查询下运行
UPDATE oc_setting SET date_modified
='1'WHER value
。oc_setting
= 437;
现在检查管理员并编辑订单。你的问题会解决。
由于
答案 4 :(得分:1)
我有很多问题从opencart 1.5.1升级到2.0.1
与您的症状完全相同
SyntaxError:JSON.parse:JSON数据第1行第1列的意外数据结尾
所以我创建了一个新的数据库和opencart 2.0.1的全新安装
最初我对新订单没有任何问题,但随着更多订单的添加和历史记录的推出,我间歇性地得到了同样的恐惧。
解决这个问题的唯一方法是清除cookie,关闭浏览器,重新启动我正在使用的笔记本电脑,使用其他浏览器。或登录到另一台计算机以更改历史记录状态。
当opencart感觉像是
时,这个消息似乎似乎随机出现真的,我应该只使用旧版本,我会在一个明显尚未准备好生产的版本中解决修复“问题”3天的问题。
答案 5 :(得分:1)
我有问题,简单的解决方案有效,试试这个:
打开Admin / Config.php
define('HTTPS_SERVER', 'http://yourdomain.com/admin/');
define('HTTPS_CATALOG', 'http://yourdomain.com/');
更改为以下内容:
define('HTTPS_SERVER', 'https://yourdomain.com/admin/');
define('HTTPS_CATALOG', 'https://yourdomain.com/');
答案 6 :(得分:1)
尝试禁用维护模式。这对我有用!