Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

jestudillo's avatar

syntax error, unexpected end of file, expecting "elseif" or "else" or "endif"

Hello, my friends. I have this error.

ParseError PHP 8.1.6 LARAVEL 9.37.0 syntax error, unexpected end of file, expecting "elseif" or "else" or "endif"

My function is STORE is the following.

public function store(Request $request) { // $validated = $request-> validate ([ 'name' => 'required|unique:products|max:255', 'price' => 'required|numeric|min:0',

        @if ($errors->any())
         <div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 mb-4 rounded relative" 
            role="alert">
              <ul>
               @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
               @endforeach
             </ul>
            </div>
        @endif  
         Product::create($validated);
    ]);
    return redirect()->route('products.index');
}

Can you help me, please. Regards,

Juan Carlos

0 likes
8 replies
webrobert's avatar

@jestudillo, You didn't answer my question. The code you posted looks like a mix between what should be in your Controller and what goes in the Blade/view file.

webrobert's avatar

@jestudillo

ProductController ....

    public function store(Request $request) 
    { 
        $validated = $request->validate ([ 
            'name'  => 'required|unique:products|max:255', 
            'price' => 'required|numeric|min:0', 
        ]);
        
        Product::create($validated);
         
        return redirect()->route('products.index');
    }

and in a view file like, products.create

@if ($errors->any())
    <div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 mb-4 rounded relative" role="alert">
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif
jestudillo's avatar

@webrobert Yes , that´s right. My blade file is in the path App --> Resources --> Views --> Products --> Create.blade.php ( File )

Code: @if ($errors->any())

@endif Product::create($validated);

Lumethys's avatar

@jestudillo please dont confused between a Controller and a View, a View will NOT query any data or save/ edit any data, only a Controller can do that

Please or to participate in this conversation.