LARAVEL:如何从视图的数据发送到控制器

问题描述:

我需要从add.blade.php发送的<input type='CHIPS'>LARAVEL:如何从视图的数据发送到控制器

一个值,以[email protected]

这是代码add.blade.php文件:

<div class="container"> 
     <form method="POST" action="{!! url('add') !!}" id="ajouter" accept-charset="UTF-8"> 

      <label for="nom">Entrez votre nom : </label> 
      <input name="name" type="text" id="name"> 

      <input name="email" type="email" id="email"> 

      <input name="password" type="password" id="password"> 

      <label for="permution">saisier les parmutions : </label> 

      <div class="chips" name="permution"></div> 

      <input class="btn-info" type="submit" value="Envoyer !"> 

      <div id="permution" name="permution"> 

      </div> 

     </form> 
    </div> 

,这是scripteadd.blade.php文件: 在那里我得到了chips_form数据和我将它们设置在

<!--Import jQuery before materialize.js--> 
    <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
    <script type="text/javascript" src="css/materialize/js/materialize.min.js"></script> 


    <script> 
     $(function() { 

      var data = $('.chips').material_chip(); 
      var dataString = JSON.stringify(data); 

     }); 
    </script> 

route.php文件 String类型的新值:

Route::get('/add', '[email protected]_form'); 
Route::post('/add', '[email protected]'); 

UserController中.php file:

public function add_form() 
     { 
      return view('add'); 
     } 


     public function add(Request $request) 
     { 
      $name = $request->input('name'); 
      $email=$request->input('email'); 
      $password = $request->input('password'); 
      $cryptPassword= bcrypt($password); 

      //Insert SQL Request 
} 
+0

你将需要一个'input'字段和'name'芯片。 – Laerte

+0

这是基本的。阅读文档。很简单。肯定这个线程是在stackoverflow的某处。 –

+0

@Laerte我需要发送“var dataString”给控制器并在那里使用 – aladin

T o将dataString的contenct发送到控制器,您可以在表单中创建一个隐藏的输入,并使用jQuery设置它的值。

首先,添加一个输入到表单:

<input id="ichips" type="hidden" name="chips"> 

然后,设置使用jQuery它的值:

var data = $('.chips').material_chip(); 
var dataString = JSON.stringify(data); 
$("#ichips").val(dataString); 

当用户发送的形式,则该值将是在隐藏输入。

+0

我试了一下,当我提交我的表单时,我得到的值为“ichips” PS:我向控制器添加了'dd($ request-> all())', 和之前提交我填写芯片表格。 – aladin

+0

要进行测试,请将代码更改为'$(“#ichips”).val(“TEST”);'并检查值是否存在于dd($ request-> all());'中。 – Laerte

+0

是的我检查它,测试是存在的(我得到'芯片'=>''测试''),但是当我检查它与dataString我得到''ichips''=>'''' – aladin