отправить смс на symfony и api ovh - PullRequest
0 голосов
/ 23 апреля 2019

У меня проблема, когда я пытаюсь передать свои номера телефонов в форме для отправки смс с api ovh, номера телефонов на внешней стороне формы, я могу получить их обратно, но внутри он возвращает мне ноль.Спасибо за помощь:

  public function sendSmsAction(Request $request)
{

            $listphoneNumber = $request->get('telephone');
            var_dump($listphoneNumber); // it returns an array phone numbers

            try{
            $form = $this->createForm(smsFormType::class);
            $form->handleRequest($request);

            if ($form->isSubmitted() && $form->isValid()) {
                $message = $form->get('message')->getData();
                $smsProvider = $this->get('app.sms.provider');
                var_dump($listphoneNumber); // it returns null
                $smsProvider->sendMessage($message, $listphoneNumber);
            }

        } catch (InvalidParameterException $e) {
            sprintf("Erreur lors de l'envoie de SMS, il faut choisir un utilisateur : %s . Trace : %s", $e->getMessage(), $e->getTraceAsString()
            );

            throw $e;
        }

        return $this->render('CeUtilisateurBundle:Utilisateur:sms.html.twig', array(
        'form' => $form->createView()));
}

1 Ответ

0 голосов
/ 25 апреля 2019

Я решил проблему

Контроллер

 public function sendSmsAction(Request $request)
{

    try{

        $form = $this->createForm(smsFormType::class, array('telephone' => $request->get('telephones')));

        $form->handleRequest($request);
            if ($form->isSubmitted() && $form->isValid()) {
                $message = $form->get('message')->getData();
                $smsProvider = $this->get('app.sms.provider');
                $phoneNumbers=$form->getConfig()->getData();
                $smsProvider->sendMessage($message, $phoneNumbers);
            }


        } catch (InvalidParameterException $e) {
            sprintf("Erreur lors de l'envoie de SMS, il faut choisir un utilisateur : %s . Trace : %s", $e->getMessage(), $e->getTraceAsString()
            );

            throw $e;
        }

        return $this->render('CeUtilisateurBundle:Utilisateur:sms.html.twig', array(
        'form' => $form->createView()));
}

formType

 class smsFormType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('telephone', HiddenType::class, array(
            'data' => $options['telephone'],
        ))
        ->add('message', TextareaType::class, array(
            'attr' => ['class' => 'tinymce',
                'placeholder' => 'Votre message',

            ],
            'label' => false,
            'required' => true))
        ->add('Envoyer', SubmitType::class, array(
            'attr' => array(
                'class' => 'btn btn-primary',
            )
        ));
}

/**
 * {@inheritdoc}
 */
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'telephone' => null
    ));
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...