Как использовать foreach в условии if, Laravel 5.8 - PullRequest
1 голос
/ 12 января 2020

Я использую laravel 5.8. Я хочу создать счет-фактуру клиента при входе в систему, сценарий состоит в том, что я хочу проверить при входе в систему, что, если срок оплаты счета-фактуры равен текущему времени, создайте новый счет-фактуру. одного и того же клиента. вот мой код

Контроллер входа

public function login(Request $req)
{

    $this->validate($req, [
        'email' => 'required',
        'password' => 'required'
    ]);

   if (\Auth::attempt(['email' => $req->email, 'password' => $req->password])) {
        $today = Carbon::now()->format('Y-m-d');
        $all = Invoice::where('due_date', $today)->get()

        foreach($all as $row) {

            $addinvoice = Invoice::create([
            'customer_id' => $row->customer_id,
            'account_title' => $row->account_title,
            'slug' => str_slug($row->account_title),
            'perpared_date' => $today,
            'amount' => $row->amount,

            ]);

            if ($row->due_date == '1 month') {
                $interval = $today->addMonths()->format('Y-m-d');
            }
            if ($row->due_date == '3 month') {
                $interval = $today->addMonths(3)->format('Y-m-d');
            }
            if ($row->due_date == '6 month') {
                $interval = $today->addMonths(6)->format('Y-m-d');
            }
            if ($row->due_date == '12 month') {
                $interval = $today->addMonths(12)->format('Y-m-d');
            }
            $addinvoice['due_date'] = $interval;

        }

        return redirect()->to('/admin/customers/list');
    } else {
        return redirect()->back()->with(['msg' => 'Invalid Email or Password']);
    }       
}

Здесь я получаю сообщение об ошибке после входа в систему

syntax error, unexpected 'foreach' (T_FOREACH)

Может ли кто-нибудь помочь мне в исправлении это?

1 Ответ

2 голосов
/ 12 января 2020

вы забыли точку с запятой для этой строки

 $all = Invoice::where('due_date', $today)->get()

поставить точку с запятой для ->get()

...