PDA

Zobacz pełną wersję : problem z phpMailerem



mar22
31-05-2014, 12:40
Witam

Próbuję wykorzystać w swoim komponencie phpMailera Joomli ale nie bardzo mi to wychodzi, otóż gdy jako nadawcę podam adres skrzynki pochodzącej z serwera na którym Joomla stoi to wszystko jest OK
(maile z których phpMailer adziała są również podpięte do użytkowników w joomli), meile działają, ale gdy podam jakikolwiek inny, np. z onetu (imie_nazwisko@op.pl) to już maile się nie wysyłają, pojawia się komunikat:


This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

Co robię nie tak? a może czegoś nie skonfigurowałem w jakimś pliku? lub czegoś zapomniałem dopisać do kodu? poniżej podaję kod phpMailera jaki wykorzystuję do wysyłania wiadomości:



$mailer = JFactory::getMailer();
$config = JFactory::getConfig();

$nadawca = $mailNadawcy;

$mailer->addRecipient($mailOdbiorcy);
$mailer->setSubject(JText::_('COM_OGL_MAIL_ZAPYT_OD'));
$mailer->setBody($mailTresc);

$send = $mailer->Send();
if($send !== true)
echo JText::_('COM_OGL_MAIL_ZAPYT_ERROR').$send->__toString();

mar22
31-05-2014, 14:23
Wygląda na to, że tak jak chciałem zrobić to jednak nigdy nie zadziała, jedyne wyjście to ustawić jednego użytkownika na wysyłanie i e-mail przesyłającego przesłać w inny sposób, albo w treści albo reply, ale to jeszcze muszę wypróbować.

Pozdrawiam
Marcin

EkleErs
01-06-2014, 13:54
Ale w.w. kod nie ma ustawionego nadawcy

$mailer->setSender($mailNadawcy);

mar22
01-06-2014, 14:54
oj, nie przekopiowałem tej linijki, ale oczywiście ona jest w skrypcie. Temat jest do zamknięcia, bo myk jaki chciałem zrobić nie jest mile widziany, uznane by to było jako podszywanie się pod skrzynkę nadawcy, dlatego musi być ustawiony jeden nadawca, np. meil serwisu a meil użytkownika, który go podaje w formularzu musi zostać przesłąny albo jako reply albo w treści wiadomości, przynajmniej tak mi się wydaje.

Jola
02-06-2014, 01:19
$mailNadawcy powinien być tablicą.

$mail->setSender(array($mailfrom, $fromname));:)