Ben bu yöntemi var:
public function activation_code()
{ //activation code sent into db
$activation_code = random_string('alnum', 32);
return $activation_code;
}
Ne yapmaya çalışıyorum benim veritabanına gönderdi ama aynı zamanda bu yüzden benim teyidinde "e-posta onaylamak için buraya tıklayın" url ile birleştirebilirsiniz aynı aktivasyon kodunun bir kopyasını temin alır sonrası veriler ile bu sağlamaktır kayıt sırasında kullanıcılara gönderilen e-posta.
Bunu nasıl yapabilirim? Ben veritabanı kodu yapmak ve e-posta URL kodu farklı olacak yani eğer kullanıcı onları maç ve kendi e-posta adresinizi onaylamak için mümkün olmaz, çünkü ben yöntemi sağlayamaz.
Böyle bir yerde eg yöntemini sağlamak gibi birçok başka yollar denedim
public function create()
{ //get post data and insert into db
$dbcolumn->group_id = 2; //group 1 for admin group 2 for member
$dbcolumn->first_name = $this->input->post('first_name');
$dbcolumn->last_name = $this->input->post('last_name');
$dbcolumn->email = $this->input->post('email');
$dbcolumn->password = $this->hashed();
$dbcolumn->birthday = $this->input->post('year') .
'-' . $this->input->post('month') . '-' . $this->input->post('day');
$dbcolumn->sex = $this->input->post('sex');
$dbcolumn->activation_code = $this->activation_code();
// date and time user joined the website
$dbcolumn->created_on = date('Y-m-d H:i:s', now());
$this->db->insert('users', $dbcolumn);
}
Eğer dbcolumn-> aktivasyon kodu satırına bakarsanız ben ne yaptığımı görürsünüz. Bu çalışır ve kod veritabanında depolanır. Ben gönderilen e-postaya aynı "$ this-> activation_code () yöntemini sağlamak eğer kodları açıkça farklı olacaktır.
public function send_confirmation_email()
{ //receives variable from create method
$this->load->library('email');
$this->email->from('wengerarsen@gmail.com', 'my site');
$this->email->to($this->input->post('email'));
$this->email->subject('my site - Activate your account');
//copy of activation code returned from create method
$this->email->message('We\'re back, please click the link to activate your account ' . anchor('http://mysite.com/activation/' . $this->activation_code(), 'Activate my account'));
$this->email->send();
}
Gördüğünüz gibi ben aynı yöntem $ activation_code () Benim göndermek onay e yöntemin içine çekti var. Bu sadece ben kullanıcıların e-posta veritabanı aktivasyon kodunu ve URI bölüm kodunu maç mümkün olmayacak anlamına yepyeni bir kodu üretecektir.
Ben dönüş kamu değişken yapmak ve gönderme confirmaton e-posta yönteminde aramak için denedim ama çalışmıyor. Kod e-posta URL o sonunda eksik biter.
Ben çalışan çok farklı yolları ve sözler denedim.
Belki burada bir şey eksik?
Önerileri, vb örnekler çok takdir edilecektir.