Laravel eloquent where not in with where condition not working

Viewed 2938

I want to get total number of ID without $this->id. I used this. but it is not working.

public function edit(Member $member)
{
    $data = DB::table("members")
        ->where('nid_number', '=','7357665970')
        ->whereNotIn('id',$member->id)
        ->count();
    dd($data);
}

want to use it on ajax validation on edit. please help

2 Answers

Please try following code

public function edit(Member $member)
{
    $data = DB::table("members")
        ->where('nid_number', '=','7357665970')
        ->whereNotIn('id', [$member->id])
        ->count();
    dd($data);
}

The whereIn method verifies that a given column's value is contained within the given array.

https://laravel.com/docs/7.x/queries

You need in this way to check existance during edit

public function edit(Member $member)
{
    if(DB::table("members")->where('nid_number', '=','7357665970')->where('id','!=',$member->id)->exists())
       return true;
    else
       return false;
}

Note: You don't whereNotIn for a single id, it must be an array

Related