Autor Zpráva
david78
Profil
Dobrý deň
V CMS Joomla máme nastaveného mailera SMTP. Na stránke je petícia, kde po zadaní svojich údajov návštevník obdrží verifikačný mail, na ktorý klikne a tak sa overí jeho identita. Potrebovali by sme tieto automaticky generované verifikačné maily preposielať (resp. kópiu) na ďalšiu adresu.
Server PHP Version 5.6.5
kód:
// send auth email to user who signed the petition
        if ($signature_verification = (int)$this->settings->get('security.signature_verification', 0)) {
            // unpublished petition, visitor must verify it first
            $this->db->set('published', 0);

            $config = JFactory::getConfig();
            $from = $config->get('mailfrom', '');
            $fromname = $config->get('fromname', '');

            $recipient = (string)$this->db->get('email', '');

Ak existuje nejaký spôsob, ako pridať recipienta (neovládam syntax)...
Posielať verifikačný mail na dve adresy je divné, otázka je, či to vôbec môže fugovať, ale ide o dokumentáciu (nejaký záznam)
davidfronek
Profil
a co zkopírovat řádek s recipient? S jiným e-mailem?
david78
Profil
davidfronek:
Tak to som samozrejme vyskúšal
Keeehi
Profil
To důležité bude v kódu dál a to jsi neukázal. To co tu je jen přepisuje data z uživatelského nastavení v administraci do proměnných.
davidfronek
Profil
david78:
Tak to som samozrejme vyskúšal

To ale z dotazu nebylo patrné...
david78
Profil
Keeehi:
To důležité bude v kódu dál a to jsi neukázal. To co tu je jen přepisuje data z uživatelského nastavení v administraci do proměnných.
Ďakujem, ano
robí to tento kus kódu:
                if (
                    $this->sendMail(
                        $from,
                        $fromname,
                        $recipient,
                        $subject,
                        $body
                    ) !== true
                ) {
                    throw new phpmailerException(JText::_('PLG_CONTENT_CDPETITIONS_EMAIL_SEND_FAILED'), 500);
                }
No a keď sa to skopíruje a zduplikuje, tka do toho duplikátu sa na miesto $recipient vloží môj e-mail, tak to funguje, maily sa odosielajú aj na moju adresu aj na pôvodného recipienta. Otázka je teraz, ako do toho implementovať funkciu CC, tak aby sme mali v hlavičke našej kópie aj adresu pôvodného recipienta.
Keeehi
Profil
Pokud jsem to správně odhadnul, tak jde o docs.joomla.org/API15:JUtility/sendMail Podle této dokumentace by se měl CC zadávat jako sedmý parametr metody.
Tudíž
...
$body,
0,
"CC email"

Ale lepší by to samozřejmě bylo posílat jako skrytou kopii, takže
...
$body,
0,
null,
"BCC email"
david78
Profil
Keeehi:
Toto nezafungovalo,
ale v rámci definície premennej toto áno:
$recipient = array((string)$this->db->get('email', ''),'meno@gmail.com');
aj tak Diki moc za pomoc
david78
Profil
Keeehi:
Ospravedlňujem sa, toto naozaj funguje v Joomla 3, ale urobil som sprostý preklep, vďaka.

...
$body,
0,
null,
"sprostypreklep@gmail.com"

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0