我做了一些关于这个主题的研究,有些专家说过这是不可能的,所以我想问一个替代解决方案.
我的情况:
页面A:[checkout.php]客户填写其结算明细.
页面B:[process.php]生成发票编号并将客户详细信息存储在数据库中.
页面C:[thirdparty.com]第三个支付网关(仅接受发布数据).
客户填写他们的详细信息并在页面A中设置他们的购物车,然后POST到页面B.在process.php内部,将POSTed数据存储在数据库中并生成发票编号.之后,将客户数据和发票号码发布到thirdparty.com支付网关.问题是在页面B中进行POST .cURL能够将数据发布到页面C,但问题是页面没有重定向到页面C.客户需要在页面C上填写信用卡详细信息.
第三方支付网关确实给了我们API样本,样本是POST发票号和客户详细信息.我们不希望系统生成多余的不需要的发票号.
这有什么解决方案吗?我们当前的解决方案是让客户填写页面A中的详细信息,然后在页面B中创建另一个页面,显示其中的所有客户详细信息,用户可以单击确认按钮POST到页面C.
我们的目标是让客户只需点击一次.
希望我的问题很明确:)
我有个问题.我正在使用苗条,我有我的主页的路线:
$app->get('/', function() use ($app) { ...
Run Code Online (Sandbox Code Playgroud)
在我的一个控制器中,我想重定向到主页面,所以我写了
$app->response->redirect('/', 303);
Run Code Online (Sandbox Code Playgroud)
但是,我没有重定向到'/'路由,而是被重定向到我的本地服务器的根目录 http://localhost/
我究竟做错了什么?我该如何使用重定向方法?
我想要一个解析并组合一系列GET参数的路由,以重定向到另一个需要GET参数的路由.
我希望这可以工作,我$search_params作为pathFor()方法的一部分传递:
// SEARCH VIEW
$app->get('/search', function ($request, $response, $args) {
$api = $this->APIRequest->get($request->getAttribute('path'),$request->getQueryParams());
$args['data'] = json_decode($api->getBody(), true);
return $this->view->render($response, 'search.html.twig', $args);
})->setName('search');
// ADVANCED SEARCH VIEW
$app->get('/advanced_search', function ($request, $response, $args) {
return $this->view->render($response, 'advanced_search.html.twig', $args);
});
// ADVANCED SEARCH PROCESS
$app->post('/advanced_search', function ($request, $response, $args) {
// get settings
$settings = $this->get('settings');
// get post parameters
$qp = $request->getParsedBody();
// translate advanced search form parameters to Solr-ese
$search_params = array(); …Run Code Online (Sandbox Code Playgroud)