Of course it has no effect. You're running validation earlier.
ff ($request->has('noValidation')) {
$this->validate($request, []);
dd($request);
return redirect('/contact-form/first-step')->with('message', 'Form save.');
}
that at the end will do nothing, because you've already run validation here
$validatedData = $request->validate([
'company_or_person' => $company_or_person,
'company_name' => $company_name,
'first_name' => $first_name,
'last_name' => $last_name,
'street_name' => 'required|min:3',
'street_number' => 'required|numeric',
'city' => 'required|min:3',
'zip_code' => 'required|max:10|string',
]);
You want those reversed so it won't run the validation if the input is present. Put your no validate code redirect as very first thing in the method. It doesn't make sense to run all that code and validate things, just to get to the bottom and check for no validate. Check that first.
if (no validate) {
return redirect()
}
// all other code.