如何检查另一个表的列并将其值添加到另一个表

时间:2017-04-25 12:46:05

标签: php mysql laravel laravel-5.1

我正在为这个问题苦苦挣扎 不久,我有付款页面。管理员选择用户和课程,然后他应该选择course_type,它从 courses 表的三列(cost_group,cost_minigroup,cost_individual,其中一列)中获取值。如果选择了course_type,那么当然必须是成本 插入付款表(在course_cost列内)。所以我做了什么

表格:

payments{ id,student_id, course_id, course_cost}
courses { id, name,cost_group,cost_minigroup,cost_individual }

我的 CourseController.php

>  public function get($id){
>         $course = Course::findOrFail($id);
>         return response()->json($course);
>     }

这是我的 form.blade.php

<div class="ui selection dropdown">    
  <input type="hidden" name="course_">
      <i class="dropdown icon"></i>
       <div class="default text">Course type</div>
   <div class="menu">
       <div class="item" data-value="course_group">Group</div>                  
       <div class="item" data-value="course_minigroup">Mini Group</div>
       <div class="item" data-value="individual">Individual</div>
   </div>
</div>

我的 PaymentsController

 public function store(){
      $payment = new Payment;
      $payment->student_id = Input::get('student_id');
      $payment->course_id = Input::get('course_id');
      $payment->course_cost = Input::get('course_cost');
      $payment->save();
      return redirect('payment');
        }

因此,如何从三列课程表中获取此course_cost值是个问题。如果您知道如何解决或任何方法或建议会很棒。提前谢谢你们。

2 个答案:

答案 0 :(得分:1)

在您的刀片上,我发现您将输入命名为course_并不确定,因为HTML代码段不完整,但可能是导致问题的原因。

最好在将其存储到任何内容之前尝试检查你得到了什么,尝试首先运行dd(Input::all())作为调试的开始。

至于获取课程成本的价值,有很多方法,一个是ajax更新字段。

答案 1 :(得分:1)

您应该更好地通过js.and在您的字段(下拉列表)中获取值,而不应该使用此代码

<div class="menu">
   <div class="item" data-value="{{$data['course_group']}}">Your call1</div>
   <div class="item" data-value="{{$data['course_minigroup']}}">Your call2</div>
   <div class="item" data-value="{{$data['course_individual']}}">Your call3</div>
</div>

然后你应该插入一些控制器代码

$payment->course_cost = Input::get('course_val');

在你的.js文件中试试这个

$('.course_val').click(function({
$('#course_val').val($(this).attr('data-value'));
alert('Your alert')
}))