WebSite X5Help Center

 
Arkadiusz B.
Arkadiusz B.
User

Brak wysyłki powiadomienia na email gdy wybrana jest baza danych  pl

Autor: Arkadiusz B.
Visited 1174, Followers 2, Udostępniony 0  

Dzień dobry

Gdy wybieram zapis danych z formularza i zaznaczam powiadomienie na email o nowych danych - dane nigdy nie docierają na wskazany adres email. Sprawdzałem 4 działające adresy. Bez rezultatu. To bardzo utrudnia funkcjonowanie :-(

W załączniku okienko w którym ustawiłem takie powiadomienie. Gdy przestawiam na wysyłkę danych na email - dane dochodzą. Ale to nie rozwiązuje problemu, bo wtedy bazę musze edytować ręcznie.

Wszystkiego dobrego

Arek

Posted on the
9 ODPOWIEDZI
Arkadiusz B.
Arkadiusz B.
User
Autor

Znalazłem obejście problemu. Powodem jest ten kawałek kodu

 $_POST['imObjectForm_1_4'] != "" ? $_POST['imObjectForm_1_4'] :  

Który występuje w pliku imEmailForm.php. Próbuje wysłać email w sposób który jest odrzucany przez serwery pocztowe.

Kod próbuje  wysłać wiadomość jako "email" kogoś kto się zarejestrował. To jest problem. Serwery blokują takie zachowania.

Kod który działa:

$form->mailToOwner('***er', '***iver', 'Notification from ' . $imSettings['general']['url'] . '', 'Nowy user na MD', true);

Więc to wciąż tylko obejście problemu, bo skrypt generuje się za każdym razem przy zmianie czegokolwiek w opcjach email.

Może jakieś sugestie jak to zrobić na stałe?

Wszystkiego dobrego

Arek

Czytaj więcej
Posted on the from Arkadiusz B.
Arkadiusz B.
Arkadiusz B.
User
Autor

Dzień dobry

Niestety to nie to. Ta opcja jest oczywiście zaznaczona. Stąd mój list tutaj, że to nie działa 

Proszę o pomoc w znalezieniu innego rozwiązania.

Wszystkiego dobrego

Arek

Czytaj więcej
Posted on the from Arkadiusz B.
Promise SA
Promise SA
Icm Partner

Witaj Arkadiusz,

Czy skrzynka e-mail, z której korzystasz w formularzu oraz w polu "Zawsze używaj następującego adresu nadawcy", obsługiwana jest przez ten sam serwer e-mail, co serwer www, na którym znajduje się Twoja strona?

Problem z wysyłaniem wiadomości e-mail z adresu, który nie jest obsługiwany przez ten sam serwer wynika najczęściej z zabezpieczenia SPF (np. próbujesz wysłać wiadomość z adresu *** z serwera, który nie jest na liście serwerów obsługujących skrzynki w domenie @mail.com): https://pl.wikipedia.org/wiki/Sender_Policy_Framework

Pozdrawiamy i życzymy Wesołych Świąt

Czytaj więcej
Posted on the from Promise SA
Arkadiusz B.
Arkadiusz B.
User
Autor

Dobry wieczór

Tak, to ten sam serwer. Próbuję wysyłać z własnego adresu na własny adres. Ale wydaje mi się, że ten skrypt próbuje wysyłać email z adresu kogoś kto się własnie zarejestrował, a nie z mojego adresu wpisanego w opcjach programu.  

Powrórzę raz jeszcze. Ten kawałek kodu psuje działanie skryptu

$_POST['imObjectForm_1_4'] != "" ? $_POST['imObjectForm_1_4'] : 

Gdy go usunę i zostaje czysty kod poniżej 

$form->mailToOwner('***er', '***iver', 'Notification from ' . $imSettings['general']['url'] . '', 'Nowy user na MD', true);

Emaile dochodzą. 

Prosze zauważyć, że kod "$form->setField('email', @$_POST['imObjectForm_1_4'], 'email', false);" odwołuje się do zmiennej email z formularza. A zmienna email z formularza to przecież adres wpisywany przez osobę rejestrującą się. Nie mam wpływu na to co ktoś tam wpisze. A potem ta zmienna email jest wpisywana w kod który ma mi wysłać powiadomienie o nowej rejestracji.

To, ze serwer nie pozwala na taką wysyłkę to dla mnie zupełnie normalne. Proszę sobie wyborazić, że ktoś wpisuje w formularzu jako swój adres *** - no nie ma opcji, żeby jakikolwiek serwer (prawidłowo skonfigurowany) pozwolił na wysłanie emaila do mnie w imieniu ***. Ja bym to podciągnął pod https://pl.wikipedia.org/wiki/E-mail_spoofing

Wszystkiego dobrego

Arek

Czytaj więcej
Posted on the from Arkadiusz B.
Arkadiusz B.
Arkadiusz B.
User
Autor

ahhhh.. Wszystko się wyjasniło :)))

Powiązanie z zakładką która jest wcześniej. To mnie trochę zmyliło. Emaila konfigurowałem w sekcji email, gdzie podałem wszystkie dane. W samym formularzu, gdy włącza się opcję zapisu do bazy danych, podaje się tylko adres email odbiorcy danych. Wziąłem to na inną logikę. Skoro mam adres email, mój prawdziwy, podany w opcjach, to w życiu bym nie wpadł, że zmienna email z formularza nadpisuje moje ustawienia. Tym bardziej, że jest napisane - używaj ZAWSZE adresu nadawcy. Skoro po zmianie sposobu otrzymywania danych z "wysyłaj na email", na "zapisuj w bazie danych" znikają wszelkie możliwości konfiguracyjne emaila (co też jest trochę niefortunne, bo skrypt i tak korzysta z danych tam wpisanych, temat, treść wiadomości itd.) Przyjąłem, że adres nadawcy będzie moim adresem email a nie, że będzie brany pod uwagę "email" z formularza. 

Moim zdaniem to niespójność i zaciemnienie co, z czym jest powiązane. Ale szanuję, może ktoś ma inną logikę :P

Ważne, że znalazłem problem, wyeliminowałem go i pomogłem sobie w tej sytuacji.

Wszystkiego dobrego

Arek

Czytaj więcej
Posted on the from Arkadiusz B.
Promise SA
Promise SA
Icm Partner

Witaj Arkadiusz,

Cieszymy się, że udało Ci się rozwiązać opisywany problem.

Pozdrawiamy i życzymy Wesołych Świąt

Czytaj więcej
Posted on the from Promise SA
Arkadiusz B.
Arkadiusz B.
User
Autor

Dzień dobry

Ja też się cieszę, ale może to pomysł na delikatne zmiany w programie. Żeby nikt więcej nie miał tego problemu. Tak naprawdę wystarczy nadać priorytet opcji. Jeśli jest zaznaczone:  używaj ZAWSZE adresu nadawcy, to każda inna metoda jest ignorowana. Email zawsze będzie wychodził ze wskazanego, prawdziwego adresu email.

Druga sprawa to możliwość konfiguracji treści i tematu emaila gdy zaznaczona jest opcja - wpisuj dane do bazy danych. Nie wynika to z niczego, że program użyje wartości z opcji - wysyłaj dane na email, skoro te opcje znikają. 

Wszystkiego dobrego

Arek

Czytaj więcej
Posted on the from Arkadiusz B.
Promise SA
Promise SA
Icm Partner

Witaj Arkadiusz,

Prosimy o utworzenie nowego postu typu "sugestia" i opisania w nim powyższych pomysłów. Przedstawiciel producenta programu na pewno zapozna się z Twoimi pomysłami.

Pozdrawiamy i życzymy Wesołych Świąt

Czytaj więcej
Posted on the from Promise SA