我的电子邮件格式
$confirmationcode = rand(10, 1000);
$unumber = uniqid();
$message= '<html><head></head><body>
<div style="height:600px; width:100%; ">
<h3>'.$fetch_tration.'<br></div></body> </html>';
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_port'] = 465;
$config['smtp_user'] = 'example@example.com';
$config['smtp_pass'] = '************';
$config['charset'] = 'utf-8';
$config['wordwrap'] = TRUE;
$this->load->library('email');
$this->email->initialize($config);
$this->email->set_newline("\r\n");
$this->email->from('example@example.com', 'Admin Team');
$this->email->to(example@example.com);
$this->email->subject('Confirm Registration');
$this->email->message($message);
$this->email->set_mailtype('html');
$this->email->send();
电子邮件中的$ fetch_tration是一个看起来像
的电子邮件模板请通过www.doamin.Com确认您的注册
其中确认文字有类似的链接 http://example.com/mycon/emailconfirmation/&#39; $ confirmationcode&#39; /&#39; $ UNumber当前&#39;
我想要将$ confirmationcode和$ unumber替换为在邮件时分配的值。 当有人注册而不是电子邮件发送成功但变量$ confirmationcode和$ unumber未在链接中分配。当用户点击确认链接时,感谢收到错误,如
您提交的URI不允许使用字符。
请帮忙 感谢提前
答案 0 :(得分:1)
如果您使用CodeIgniter作为您的框架,那么您可以直接从配置文件中允许允许的字符。
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-=';
您能否上传完整链接,以便于理解确切的问题。
http://example.com/mycon/emailconfirmation/'.$confirmationcode.'/'.$unumber.'
如果您将上链接作为点击按钮,那么它完全错误,您必须使用&#34; str_replace&#34;用于从模板替换url的函数。
EXA:
$emaildata['message'] = file_get_contents(ASSETS_URL.'email_templates/filename');
$emaildata['message'] = str_replace('ReplacetagName', $YourVariable, $emaildata['message']);