Codeigniter paypal library->表格中的金额?

时间:2009-12-23 17:17:17

标签: codeigniter

我需要从表单中获取项目数量并将其传递给CI的paypal_lib auto_form:

这是我的控制者:

function auto_form()
{
    $this->paypal_lib->add_field('business', 'admin_1261513315_biz@pixelcraftwebdesign.com');
    $this->paypal_lib->add_field('return', site_url('home/success'));
    $this->paypal_lib->add_field('cancel_return', site_url('home/cancel'));
    $this->paypal_lib->add_field('notify_url', site_url('home/ipn')); // <-- IPN url
    $this->paypal_lib->add_field('custom', '1234567890'); // <-- Verify return

    $this->paypal_lib->add_field('item_name', 'Paypal Test Transaction');
    $this->paypal_lib->add_field('item_number', '001');
    $this->paypal_lib->add_field('quantity', $quant);
    $this->paypal_lib->add_field('amount', '1');

    $this->paypal_lib->paypal_auto_form();
}

我有一个自己的库,用于验证输入并在验证时重定向到auto_form。我只需要将var $ quant传递给控制器​​。

我怎样才能做到这一点?!

1 个答案:

答案 0 :(得分:1)

如果要直接重定向到auto_form控制器方法,可以在那里设置一个参数来传递数据:

auto_form($quant)

然后,根据假设您没有路由,重写或查询'on'(基本上是库存CI设置)来干扰,并且您正在使用URL帮助程序进行重定向,您可以执行以下重定向:

redirect('/index.php/your_controller/auto_form/'. $quantity_from_form);

有关将URI细分传递到函数here的更多信息。


或者,如果您已在应用程序中使用CI会话,则可以将数量值添加到会话变量中,以便以后在auto_form控制器方法中进行检索:

// Set After Your Form Passed Validation
$this->session->set_userdata('quant', $quantity_from_form);

// Retrieve Later in Controller Method After Redirect
$this->paypal_lib->add_field('quantity', $this->session->userdata('item'));

有关CI会话的更多信息here