namespace App\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Zemasterkrom\CloudflareTurnstileBundle\Form\Type\CloudflareTurnstileType;
class ContactType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('first_name', TextType::class, [
'label' => 'First name'
])
->add('last_name', TextType::class, [
'label' => 'Last name'
])
->add('cf_turnstile_response', CloudflareTurnstileType::class);
}
}
namespace App\Controller;
use App\Form\Type\ContactType;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
class CloudflareTurnstileTestController extends AbstractController
{
public function validateContactForm(Request $request): Response
{
$form = $this->createForm(ContactType::class);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
// The form has been submitted and is valid: execute your actions here
}
// The form has not been submitted or is invalid: if there is an error, an error message will be registered in your form
return $this->render('<twig_template_path>', [
'form' => $form->createView(),
]);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.