I want to get submission data in sendAction() below but I can't. Examples in documentation are all done in a single method. I'm generating form in indexAction() and handling submission in sendAction().
There are many examples on web as well as in Stackowerflow but for some reason there is no example like mine, or maybe I missed.
Thanks for the help
namespace Se\HirBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
class EmailController extends Controller
{
public function indexAction()
{
$defaultData = array('message' => 'Type your message here');
$form = $this->createFormBuilder($defaultData)
->setAction($this->generateUrl('email_send'))
->setMethod('POST')
->add('name', 'text')
->add('email', 'email')
->add('message', 'textarea')
->add('send', 'submit')
->getForm();
return $this->render('SeHirBundle:Default:email.html.twig',
array('page' => 'Email', 'form' => $form->createView()));
}
public function sendAction(Request $request)
{
if ($request->getMethod() == 'POST')
{
$name = //How to get submission data
$email = //How to get submission data
$message = //How to get submission data
return new Response('Email sent');
}
return new Response('Form is faulty');
}
}
This prints nothing as well: $this->get('request')->request->get('name');
When I dump $request, I get this:
Symfony\Component\HttpFoundation\Request Object
(
[attributes] => Symfony\Component\HttpFoundation\ParameterBag Object
(
[parameters:protected] => Array
(
[_controller] => Se\HirBundle\Controller\EmailController::sendAction
[_route] => email_send
[_route_params] => Array
(
)
)
)
[request] => Symfony\Component\HttpFoundation\ParameterBag Object
(
[parameters:protected] => Array
(
[form] => Array
(
[name] => 11
[email] => [email protected]
[message] => Type your message here
[send] =>
[_token] => NfPK_MN6oWYQm2SRrgRjoldwkrodiT033FNsXSjv3TA
)
)
)
$request->get('name')