Poslanie Html mailu obsah z databaze
- duskohu
- Člen | 778
Ahojte snazim sa poslat html mail obsah mam v db, ako sa to da rozumne realizovat?
/** @var Nette\Bridges\ApplicationLatte\ILatteFactory */
private $latteFactory;
/** @var Nette\Application\IPresenter */
private $presenter;
/** @var Nette\Http\IRequest */
private $request;
/** @var Nette\Mail\IMailer */
private $mailer;
$latte = $this->latteFactory->create();
$latte->addProvider("uiPresenter", $this->presenter);
$latte->addProvider("uiControl", $this->presenter);
$params = [
'userName' => 'Test user',
'helloMessage' => 'Hello',
'baseUrl' => $this->request->getUrl()->baseUrl,
];
UIMacros::install($latte->getCompiler());
// toto potrebujem nejako renderovat a poslat do setHtmlBody
$messageFromDb = '{helloMessage}, {userName}<br><a href="{baseUrl}">{baseUrl}</a>'
$mail = new Message();
$mail->setFrom('from@example.com')
->setSubject('Test subject')
->addTo('to@example.com')
->setHtmlBody(?????);
$this->mailer->send($mail);
Editoval duskohu (24. 4. 2020 11:23)
- David Matějka
- Moderator | 6445
pokud tam máš jen proměnné, co potřebuješ dosadit, tak je snažší a bezpečnější použít str_replace nebo něco podobnýho. pokud je to plnohodnotné latte, tak string loader a ideálně se sandbox módem, jelikož jinak tam můžeš vykonat jakýkoliv php kód