Salut j'ai essayé de faire un formulaire qui peut envoyer un courriel en utilisant yii/mail
, le problème est que je ne peux envoyer un formulaire pour devenir corps de texte, j'ai le code les modèlescomment envoyer plusieurs settextbody yii2 envoyer un mail
class CareerForm extends Model
{
public $name;
public $email;
public $subject;
public $body;
public $verifyCode;
public $gender;
public function rules()
{
return [
[['name', 'email', 'subject', 'body','gender'], 'required'],
['email', 'email'],
['verifyCode', 'captcha'],
];
}
public function career($email)
{
if ($this->validate()) {
Yii::$app->mailer->compose()
->setTo($email)
->setFrom([$this->email => $this->name])
->setSubject($this->subject)
->setTextBody($this->body)
->send();
return true;
}
return false;
}
}
Comment puis-je utiliser plusieurs paramètres pour
->setTextBody($this->body)
comme
->setTextBody($this->body,$this->gender)
bec Ause en vue que j'ai plusieurs text input
et radio list
à envoyer comme e-mail, comment puis-je faire cela?
mes attentes sur le message texte sera comme:
name
gender
variable 1
variable 2
variable n
RÉSUMÉ modifier = both réponse est correcte mais je l'utilise
public function career($email)
{
if ($this->validate()) {
Yii::$app->mailer->compose('filename.html' ,[
'email' => $this->email,
'name' => $this->name,
])
->setTo($email)
->setFrom([$this->email => $this->name])
->setSubject('career')
->send();
return true;
}
return false;}
Merci pour Ankur Garg et Pratik Karmakar
Préparer le corps du courrier électronique befroe appelant -> setTextBody ($ this-> body) et ensuite définir dans $ this-> body –
si vous avez dit de préparer le corps de l'email d'abord, puis comment fusionner 2 variables (corps et sexe) à une variable (corps)? –
body est une chaîne. Essayez ceci $ this-> body. = $ This-> gender; –