![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam problem z wysyłaniem danych z formularza na konto pocztowe przy pomocy Swiftmailera. Formularz widok:
Message.php <?php // src/Acme/PageBundle/Entity/Message.php namespace Acme\PageBundle\Entity;
Controller
Budowanie formularza <?php // src/Acme/PageBundle/Form/Type/ContactType.php namespace Acme\PageBundle\Form\Type; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface;
routing.yml
Całość niestety nie działa. Po wypełnieniu pól oraz wysłaniu formularza, następuje przekierowanie na tą samą stronę, a mail nie dociera do odbiorcy. Prośba o wsparcie w tym temacie. Jeszcze:
Na gmailu, localhoście, wszystko chodziło jak należy. Ten warunek
nie działa. Może po kolei uda mi sie rozwiązac z Waszą pomoca ten problem. Więc krok po kroku ... Po wywołaniu akcji send na formularzu, jak powinienem poprawnie przekazać jego dane do kontrolera a konkretnie akcji contactAction ? |
|
|
![]() |
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
memory - dzięki za wskazanie błędu.
Poprawiłem i zmieniłem nieco kod Controller:
Message.php
Teraz po wywołaniu strony z formularzem mam : Oops! An Error Occurred The server returned a "500 Internal Server Error". Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused. a w logach: [2015-04-27 19:43:07] request.INFO: Matched route "acme_page_contact" (parameters: "_controller": "Acme\PageBundle\Controller\DefaultController::contactAction", "_route": "acme_page_contact") [] [] [2015-04-27 19:43:07] request.CRITICAL: Uncaught PHP Exception Symfony\Component\PropertyAccess\Exception\NoSuchPropertyException: "Neither the property "email" nor one of the methods "getEmail()", "email()", "isEmail()", "hasEmail()", "__get()" exist and have public access in class "Acme\PageBundle\Entity\Message"." at /home/kosmos/domains/nazwadomeny.pl/vendor/symfony/symfony/src/Symfony/Component/PropertyAccess/PropertyAccessor.php line 371 {"exception":"[object] (Symfony\\Component\\PropertyAccess\\Exception\\NoSuchPropertyException(code: 0): Neither the property \"email\" nor one of the methods \"getEmail()\", \"email()\", \"isEmail()\", \"hasEmail()\", \"__get()\" exist and have public access in class \"Acme\\PageBundle\\Entity\\Message\". at /home/kosmos/domains/nazwadomeny.pl/vendor/symfony/symfony/src/Symfony/Component/PropertyAccess/PropertyAccessor.php:371)"} [] Pytanie dlaczego? Pozmieniałem w encji Message nazwy metod i zmienne to fakt. Nie ma już tam zmiennej email a pomimo to w logach zwracany jest komunikat że takowa jest. UPDATE Znalazłem błąd: Polegał na tym że w widoku w dalszym ciągu miałem w formularzu email zamiast from (IMG:style_emoticons/default/smile.gif) Strona z formularzem wyświetla się, po wysłaniu formularza następuje przekierowanie na stronę home, ale wiadomość nadal nie dochodzi na skrzynkę pocztową (IMG:style_emoticons/default/dry.gif) ZAPIS Z LOGÓW ERROR: Exception occurred while flushing email queue: Failed to authenticate on SMTP server with username "tumojanazwadomeny.pl" using 2 possible authenticators [] [] Czyli wszystko jasne ale nie do końca ;/ UPDATE Sukces okazało się że miałem niepoprawnie skonfigurowane uwierzytelniane do skrzynki pocztowej (IMG:style_emoticons/default/wink.gif) Mam ostatnią rzecz do zrobienia Obecnie w mailu przesyłam ->setSubject($message->getSubject()) ->setFrom($message->getFrom()) ->setTo('kontakt@nazwadomeny.pl') ->setBody($message->getNote()); ale w formularzu mam jeszcze pola name i surname. Jak mogę je umieścić w setBody? Ten post edytował kosmos 27.04.2015, 20:14:07 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 09:05 |