【问题标题】:Laravel Handling radio button valuesLaravel 处理单选按钮值
【发布时间】:2015-04-06 16:46:46
【问题描述】:

我有一个带有单选按钮的动态表格,可以在每一行中选择通过或失败。以下是我的代码:

<form name="form2" method="post" action="/admin/testresults/update/added">
  <?php if(isset($rows)){ $i=1; $pass=$ fail='' ; foreach ($rows as $row) { (($row->result == 1) ? $pass='checked' : $fail='checked'); print "
  <tr>
    <td>".$i."</td>
    <td>".$row->name." ".$row->last_name."</td>
    <td>
      <input type='radio' name='".$row->userId."' value='1' ".$pass.">Pass
      <br/>
      <input type='radio' name='".$row->userId."' value='0' ".$fail.">Fail
      <input type='hidden' name='".$row->userId."' value='".$row->userId."' </td>
  </tr>
  "; $i++; } print "
  <tr>
    <td colspan='3'>
      <input class='ember-view btn btn-danger' type='submit' />
    </td>
  </tr>"; } ?>
</form>

我在控制器中使用以下代码:

$inputs = Input::get();
foreach($inputs as $input){
    TestResults::updateCandidate($input);
}

我想传递给 updateCandidate() 的是学生 ID 和选定的单选按钮值 (1/0)。我该怎么做?

谢谢

【问题讨论】:

  • 你在使用 Laravel 吗?如果是这样,为什么要将 PHP 代码嵌入到模板中?
  • @Cheluis 我还是 Laravel 的新手......不太确定有什么好的做法
  • TestResults::updateCandidate($input) 看起来像您定义的自定义类。你想如何将参数传递给它?作为一个数组?作为单独的字符串?
  • 没关系,框架旨在避免使用这样的样板代码。您应该阅读如何在 Laravel 中呈现表单和模板,并没有那么复杂。虽然,恕我直言,Laravel 的文档不是最好的,但您可以在此处查看视图和模板。 laravel.com/docs/4.2/templates.
  • @MichaelColeman 我希望它会作为一个数组传递。但据我所知,每行的所有值都可以使用$inputs = Input::get()

标签: php mysql laravel query-builder


【解决方案1】:

首先,我同意@Chelius cmets,看看laravel关于刀片模板和@if / @foreach的文档以及{{ Form::input }}的使用。

但是,在回答您的问题时 - 您需要更好地为输入命名以检索用户 ID,并且详细的 PHP 版本最终应如下所示:

<td>
  <input type='radio' name='results[".$row->userId."]' value='1' ".$pass.">Pass
  <br/>
  <input type='radio' name='results[".$row->userId."]' value='0' ".$fail.">Fail
  <input type='hidden' name='".$row->userId."' value='".$row->userId."'
 </td>

处理时,您的代码应为:

$inputs = Input::get();
foreach($inputs['results'] as $userId => $result){
    TestResults::updateCandidate($userId, $result);
}

请注意,您可能需要更新“updateCandidate”函数以接受用户 ID 和结果。

【讨论】:

    猜你喜欢
    • 2018-10-29
    • 2014-06-26
    • 2018-05-15
    • 2015-10-24
    • 2015-11-01
    • 1970-01-01
    • 2020-07-23
    • 1970-01-01
    • 2011-02-13
    相关资源
    最近更新 更多