How to fetch price through another table where $product-gt;name is equal to $order-gt;product(如何通过$PRODUCT-名称等于$ORDER-PRODUCT;的另一个表取价)
                            本文介绍了如何通过$PRODUCT-&>名称等于$ORDER-&>PRODUCT;的另一个表取价的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
                        
                        问题描述
我有2个表PRODUCT和ORDER,我想通过PRODUCT表获取价格 这是我的表格<div id="TextBoxDiv1">
     <input type="hidden" value="{{Auth::user()->name}}" name="order_by">
     <input class="text email" type="text" name="quantity[]" placeholder="Quantity" required="" id='textbox1' style="width: 230px; height: 41px; margin-top: 10px">
     <div class="form-group row">
     {{-- <label class="col-md-3 mt-3">Single Select</label> --}}
     <div class="col-md-9">
     <select class="select2 form-select shadow-none" style="width: 230px; height: 41px; margin-top: 10px" name="product[]">
             <option>Select Product</option>
             @foreach ($products as $product)
                   <option value="{{ $product->name }}">{{ $product->name }}</option>
              @endforeach
      </select>
    </div>
    </div>
 </div>
这是我的OrderController,我不知道如何获取价格,因为我们从表单中获得的值在数组中,我想将其转换为字符串,并通过该名称通过Products表获取价格
public function store(Request $request)
{
    $products = Product::all();
    $request->validate([
        'order_by' => 'required',
        'product' => 'required',
        'quantity' => 'required',
        'status' => 'sometimes',
        'price' => 'sometimes',
    ]);
    $order = new Order();
    $order->product = implode(',', $request->product);
    $order->quantity = implode(',', $request->quantity);
    // $order->price = ;
    $order->order_by = $request->order_by;
    $order->status = $request->status;
    $order->save();
    return redirect()->route('user/pending', compact('products'))->withSuccess('Done');
}
这是Orders表的图像
这是产品表的图片
推荐答案
将选项的值设置为$PRODUCT-&>id,然后在控制器中获取价格
在刀片中:
@foreach ($products as $product)
   <option value="{{ $product->id }}">{{ $product->name }}</option>
@endforeach
在控制器中:
$product = Product::find(implode(',', $request->product));
$order->product = $product->name;
$order->price =$product->price;
                        这篇关于如何通过$PRODUCT-&>名称等于$ORDER-&>PRODUCT;的另一个表取价的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
				 沃梦达教程
				
			本文标题为:如何通过$PRODUCT-&>名称等于$ORDER-&>PRODUCT;的另一个表取价
				
        
 
            
        基础教程推荐
             猜你喜欢
        
	     - 将变量从树枝传递给 js 2022-01-01
 - php中的PDF导出 2022-01-01
 - php 7.4 在写入变量中的 Twig 问题 2022-01-01
 - Web 服务器如何处理请求? 2021-01-01
 - PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
 - 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
 - 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
 - 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
 - php中的foreach复选框POST 2021-01-01
 - Yii2 - 在运行时设置邮件传输参数 2022-01-01
 
    	
    	
    	
    	
    	
    	
    	
    	
				
				
				
				