通过沙箱2付款不适用于laravel

时间:2018-09-05 11:49:53

标签: php laravel

我尝试获取所有值的HTML代码。

<form action='https://sandbox.2checkout.com/checkout/purchase' method='post'>
  <input type='hidden' name='sid' value='901390740' />
  <input type='hidden' name='mode' value='2CO' />
  @foreach(CartProvider::instance()->getCartItems() as $item)
    <input type='hidden' name='li_0_type' value='product' />
    <input type='hidden' name='li_0_product_id' value='{{$item->user_id}}' >
    <input type='hidden' name='li_0_name' value='{{$item->name}}' />
    <input type='hidden' name='li_0_quantity' value='{{$item->quantity}}' >
    <input type='hidden' name='li_0_price' value='{{$item->price}}' />
  @endforeach
  <input type="hidden" name="merchant_order_id" value="Y">
  <input style="margin-left: 675px;margin-top: 75px;" type='submit' name='submit' class="btn btn-success" value='checkout' >
</form>

当我单击“结帐”按钮时,我只会得到最后一项,但我可以通过五项。 也是它的路线

Route::get('checkout','frontend\CartController@checkout');

和控制器

public function PlaceOrder(){
      $order= new order();
      $order->total_amount=CartProvider::instance()->total;
      $order->user_id='9';
      $order->save();
      $order_id=$order->id;
          foreach (CartProvider::instance()->getCartItems() as $item)
      {


            $order= new orderdetail();
            $order->product_id=$item->id;
            $order->order_id=$order_id;
            $order->price=$item->price;
            $order->subtotal=$item->price*$item->getQuantity();
            $order->quantity=$item->getQuantity();

          //$data=(array)$item->options;
            $order->product_image=$item->options['image'];
// print_r($order); die;
            $order->save();

      }
         //print_r(CartProvider::instance()->getCartItems());
      return view('frontend/modules/checkout');
     CartProvider::instance()->destroy();

    }

谢谢您的帮助。

1 个答案:

答案 0 :(得分:0)

根据代码,您为循环中的项目的html元素指定了相同的名称。您应该定义为数组。 例如。

<input type='hidden' name='li_0_product_id[]' value='{{$item->user_id}}' >