2017-03-25 32 views
-1

的我从数据库中检索某些数据的价值,把它变成一个表视图如何得到多个复选框

if (isset($_POST['user_id'])) { 
      foreach ($_POST['user_id'] as $value) { 
       $user = User::find($value); 
       $id = Some::create([ 
          'user_id'     => $user->id, 
          'user_email'    => $user->email, 
          'user_name'     => $user->name, 
          'location'     => $user->location, 
          'user_phone'    => $user->phone, 
          'created_at'    => \Carbon\Carbon::now()->subDays(3), 
          ]); 
          $id->update(['created_at' => \Carbon\Carbon::now()->subDays(3)]); 
          $id->created_at = \Carbon\Carbon::now()->subDays(3); 
          $id->save(); 
        if ($id) 
        { 
         // delete user from PH table 
         $deleteUser = ProvideHelp::where('user_id', $id->user_id)->delete(); 
         if ($deleteUser) { 
          return redirect('home')->with('success', 'Your Addition was successful'); 
         } 

        } 
      } 
     } 

     return redirect('home')->with('error', 'Inter Error Please try again Later'); 

循环只适用于第一个数据和休息不工作。我想使用每个循环的值来查询数据库。只有第一个查询有效 - 第二个或第三个查询不起作用。

回答

0

这就是我的想法。只有一个用户标识被发送到php脚本,因此,它只会循环一次。

我认为你正在请求userid一次。您将需要一个循环来读取多个复选框的值。我建议你为每个chexkbox的名称添加一个索引,以便能够通过php循环访问它。

+0

存在多个用户标识并且其索引为'userid []' – dagogodboss

+0

存在多个用户标识并且其索引为'userid []' – dagogodboss

0

这有可能是你需要放置一个“[]”后,您的复选框的名称值,使其看起来像这样在你的HTML:

name='user_id[]'

否则,当你通过复选框值你的PHP只会传递第一个值。