-3
//Create Borang Pendaftaran
public function CreateForm()
{
    $names = DB::table('pendaftaran')
    ->where('isActive',1)
    ->orderBy('id','desc')
    ->get();

    $names2 = DB::table('pendaftaran')
    ->where('isActive',0)
    ->orderBy('id','desc')
    ->get();

    return view('contact',['names' =>$names]); 
}

The changes I made is

return view('contact',['names' =>$names,$names2]);

3 Answers3

0

use this one:

 $contact= [
    'name'  => $names,
    'names2'   => $names2,
   
 ];
 return view('contact',comapact('contact');
Zia Yamin
  • 942
  • 2
  • 10
  • 34
0

If you want to use two variables in your view, in your blade you just use activeNames and inactiveNames instead

return view('contact',[
  'activeNames' => $names,
  'inactiveNames' => $names2,
]);

// Then in blade

@foreach($activeNames as $activeName) 
  {{ $activeName }}
@endforeach

@foreach($inactiveNames as $inactiveName)
  {{ $activeName }}
@endforeach 

If you want to use single $names in view, then you shouldn't have used the ->where in your query, just grab all of them.

$names = DB::table('pendaftaran')
    ->orderBy('id','desc')
    ->get();

return view('contact',['names' =>$names]); 
Cloud Soh Jun Fu
  • 1,456
  • 9
  • 12
0

You must put $names and $names2 into a array. example

$arr_names = [$names, $names2];
return view('contact',['names' =>$arr_names]);

or

return view('contact',['names'=> $names,'names2'=>$names2]);
Mai Truong
  • 471
  • 2
  • 8