сделал простую форму пользователя электронной почты пользователя и данные города, сохраненные в базе данных, теперь мне нужно добавить эту форму после отправки системы данных, генерирующей автоматическую электронную почту по адресу пользователя, но с указанной переменной я использую одну переменную с именем $lang
если пользовательский ввод является таким отправьте электронное письмо на арабском языке или, если пользователь вводит en, отправьте электронное письмо по-английски, есть две проблемы, с которыми я сталкиваюсь, не знаю, как исправить этот класс электронной почты в коде для предложений, которыми я разделяю код.
Класс электронной почты
public function email() { $email = $this->input->post('email'); $city = $this->input->post('city'); $this->load->library('email'); $this->email->from('noreply@abc.com', 'Halalat'); $this->email->to('$emai'); $this->email->subject('Halalat Newsletter Subscription'); $this->email->message( 'Thankyou for submission' ); $this->email->send(); echo $this->email->print_debugger(); }
user.php в контроллере
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class User extends CI_Controller { function __construct() { parent::__construct(); $this->load->helper('form'); $this->load->helper('url'); $this->load->library('user_agent'); $this->load->library('form_validation'); } public function create_user() { // field name, error message, validation rules $lang = $this->input->post("lang"); $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email|is_unique[users.email]'); $this->form_validation->set_rules('city', 'City', 'trim|required'); if ($this->form_validation->run() == FALSE) { if ($lang == "en") { if ($this->agent->is_mobile()) { $this->load->view('m_english_signup'); } else { $this->load->view('d_english_signup'); } } //if ($this->agent->is_mobile()) else { if ($this->agent->is_mobile()) { $this->load->view('m_arabic_signup'); } else { $this->load->view('d_arabic_signup'); } } } else { $this->load->model('Users_model'); if ($query = $this->Users_model->create_member()) { if ($lang == "en") { if ($this->agent->is_mobile()) { $this->load->view('m_english_thanks'); } else { $this->load->view('d_english_thanks'); } } else { if ($this->agent->is_mobile()) { $this->load->view('m_arabic_thanks'); } else { $this->load->view('d_arabic_thanks'); } } } } } }
users_model.php в модели
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Users_model extends CI_Model { function create_member() { $new_member_insert_data = array( 'email' => $this->input->post('email'), 'city' => $this->input->post('city'), ); $insert = $this->db->insert('users', $new_member_insert_data); return $insert; }//create_member }
Сделайте раздел отправки электронной почты как функцию в вашем контроллере:
public function sendUserMail($email) { $this->load->library('email'); $this->email->from('noreply@abc.com', 'Halalat'); $this->email->to('$email'); $this->email->subject('Halalat Newsletter Subscription'); $this->email->message('Testing'); $this->email->attach('/assests/images/photo1.jpg'); $this->email->send(); echo $this->email->print_debugger(); }
В разделе действий добавьте вызов функции электронной почты после
if ($query = $this->Users_model->create_member()) {
как:
$this->sendUserMail($this->input->post("email"));