Bonjour,

Voila je rencontre un petit problème avec mon code.
j'ai créer un formulaire sous symfony 2 , mais lors exucutiion , j'ai eu un affichage d'une page blanche je cpas ou es le probleme , symfony m'indique pas que j,ai des erreur
voici mon code :
controlleur :
<?php
// src/Uqrop/SiteBundle/Controller/membreController.php
namespace Uqrop\Sitebundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Form\Form;
use JMS\SecurityExtraBundle\Annotation\Secure;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;

use Uqrop\UserBundle\Entity\User;
use Uqrop\UserBundle\Form\UserType;
use Uqrop\SiteBundle\Form\membreFormType;

class membreController extends Controller
{

public function ajouterAction()
{

    $user = new User;
    $errors = "";
    $form = $this->createForm(new membreFormType(), $user);

    $request = $this->get('request');
    if($request->getMethod() == 'POST'){
        $form->bind($request);

        if($form->isValid()){

            $em = $this->getDoctrine()->getManager();
            $em->persist($user);
            $em->flush();

            $this->get('session')->getFlashBag()->add('info', 'Le membre a été ajouté');
            return $this->redirect($this->generateUrl('uqropsite_admin_membre'));
        }
        else
        {
            $validator = $this->get('validator');
            $errors = $validator->validate($user);

            return $this->render('UqropSiteBundle:Site:Admin/Membre/ajoutermembre.html.twig', array(
                'form' => $form->createView(),
                'errors' => $errors
            ));
        }
    }

    return $this->render('UqropSiteBundle:Site:Admin/Membre/ajoutermembre.html.twig', array(
        'form' => $form->createView(),
        'errors' => $errors

    ));
}
}

formType:
namespace Uqrop\SiteBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;

class membreFormType extends AbstractType
{

 /**
 * @param FormBuilderInterface $builder
 * @param array $options
 */

public function buildForm(FormBuilderInterface $builder, array $options)
{

    $builder
        ->add('username','text', array('required' => true))
        ->add('email', 'email', array('required' => true))
        ->add('plainPassword', 'repeated', array(
            'type' => 'password',
            'options' => array('required' => true),
            'first_options' => array('label' => 'form.password'),
            'second_options' => array('label' => 'form.password_confirmation'),
            'invalid_message' => 'fos_user.password.mismatch',
        ))
        ->add('adresse','text' ,array('required' => true))
        ->add('ville','text', array('required' => true))
        ->add('codePostal','text', array('required' => true))
        ->add('province', 'choice', array(
            'choices' => array(
                'Québec' => 'Québec',
                'Alberta' => 'Alberta',
                'Colombie-Britannique' => 'Colombie-Britannique',
                'Île-de-Prince-Édouard' => 'Île-de-Prince-Édouard',
                'Manitoba' => 'Manitoba',
                'Nouveau-Brunswick' => 'Nouveau-Brunswick',
                'Nouvelle-Écosse' => 'Nouvelle-Écosse',
                'Ontario' => 'Ontario',
                'Saskatchewan' => 'Saskatchewan',
                'Terre-Neuve-et-Labrador' => 'Terre-Neuve-et-Labrador',
                'Nunavut' => 'Nunavut',
                'Territoires du Nord-Ouest' => 'Territoires du Nord-Ouest',
                'Yukon' => 'Yukon',
            )))

        ->add('transport', 'checkbox', array('required' => false))
        ->add('benevolat', 'checkbox',  array('required' => false))
        ->add('telephone','integer',  array('required' => false))
        ->add('profession','text' , array('required' => false))
        ->add('typeAbonnement', 'choice', array(
            'choices'=>  array(
                'individuel' =>'individuel',
                'familial' =>'familial',
                'entreprise' =>'entreprise',

                 )))

        ->add('dateDoitPayer', 'date',  array('required' => false))
        ->add('dateAdhesionMembre', 'date', array('required' => false))
        ->add('doitPayer', 'choice', array(
            'choices' => array(
                '1' => 'oui',
                '0' => 'non'
                    )))
         ->add('dons','integer',  array('required' => false))

                ;
}

/**

  • @param OptionsResolverInterface $resolver
    */

    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
    $resolver->setDefaults(array(
    'data_class' =>'Uqrop\UserBundle\Entity\User',

    ));

    }

    /**

  • @return string
    */

    public function getName()
    {
    return 'uqropsite_admin_membre';
    }
    }

route :
uqropsite_admin_membre:
path: /admin/membre
defaults: { _controller: UqropSiteBundle:membre:ajouter }

je c pas ou es le probleme si vous plais aidez moi

3 réponses


Bonjour,

la page blanche c'est souvent une erreur 500. Donc il faut soit aller voir dans les logs apache2 ou nginx pour voir ce qu'il se dit (tail -f /var/log/{apache2-nginx}/error.log ou alors lancer le serveur intégré avec l'option "je raconte ma vie" app/console server:run -vvv. Ça te permettra au moins de voir à quel niveau est l'erreur.

ok merci pour ta réponse , mais j,aimerai bien comment acceder a fichier erro log , j'utilse wamp server

Ah, pour wamp je ne me rappel plus comment c'est foutu, par contre je pense qu'en faisant un clic-droit -> apache tu dois avoir des possibilités de trouvé ce fichier ou de voir un extrait des derniers logs enregistré. Pour les manips précises je te conseil de trouver des tutos sur Wamp et son utilisation.