0

我是 Opencart 和 MVC 模型的新手,Opencart 有一个事件系统,可以帮助在 Opencart 中的任何功能(如订单确认和订单状态更新)之前或之后采取一些行动或触发。

我想在订单确认后触发外部 PHP 脚本。外部 PHP 脚本位于不同的服务器和不同的域中。我需要任何解决方案或扩展。

链接喜欢http:xxxx.xxx/opencart/order_confirm.php

触发器:catalog/model/checkout/order/addOrderHistory/after
动作:admin/controller/extension/module/test_app.php

这是我的代码:

<?php
$url = 'http://xxxxx.com/xxxx/xxx/xx/order_confirm.php';
$curl = curl_init();

curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
curl_setopt($curl, CURLOPT_USERAGENT, 'OpenCart Two Factor Authentication');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_FORBID_REUSE, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
//curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post_data));

$response = curl_exec($curl);
4

1 回答 1

0

如果您在另一台服务器上将外部 php 字符串作为 HTTP 可调用对象提供服务,您可以简单地使用 php curl 向该端点发送请求。

        $handler = curl_init(url);
        curl_setopt($handler, CURLOPT_CUSTOMREQUEST, "GET");
        curl_setopt($handler, CURLOPT_POSTFIELDS, array_of_parmameters);
        curl_setopt($handler, CURLOPT_RETURNTRANSFER, true);
        $response2 = curl_exec($handler);
        $response2 = json_decode($response2);
于 2021-09-18T06:46:40.433 回答