как использовать значение переменной в моем шаблоне электронной почты, который выбирается из базы данных - PullRequest
0 голосов
/ 15 мая 2018

Формат моей электронной почты как

$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/'.$confirmationcode.'/'.$unumber.'

Я хочу заменить код подтверждения и $ unumber значением, которое присваивается при отправке почты. когда кто-то регистрируется, электронная почта отправляется успешно, но переменные $ translationcode и $ unumber не назначаются в ссылке. когда пользователь нажимает на ссылку подтверждения, благодарю вас за ошибку типа

В указанном вами URI запрещены символы.

Пожалуйста, помогите Заранее благодарим

1 Ответ

0 голосов
/ 15 мая 2018

Если вы используете CodeIgniter в качестве вашей платформы, то вы можете напрямую разрешить разрешенный символ из файла конфигурации.

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-=';

Можете ли вы загрузить полную ссылку, чтобы было легко понять точную проблему.

http://example.com/mycon/emailconfirmation/'.$confirmationcode.'/'.$unumber.'

Если вы получаете верхнюю ссылку в виде кнопки при нажатии, то это совершенно неправильно, и вынеобходимо использовать функцию "str_replace" для замены URL из шаблона.

EXA:

$emaildata['message'] = file_get_contents(ASSETS_URL.'email_templates/filename');
$emaildata['message'] = str_replace('ReplacetagName', $YourVariable, $emaildata['message']);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...