Hola, aqui estoy denuevo, necesito su ayuda, estoy creando una web con un script de wallpapers, pero tiene un error y no logro resolverlo, lo que pasa es que en el registro de usuarios, registra el usuario en la base de datos, pero no le envia el email con el link de confirmacion, osea, al usuario le imprime el error, de: su usuario ha quedado registrado, pero no se ha podido enviar el email de confirmacion, aqui esta el codigo:
Código PHP:
<?php
class Register extends Controller {
function __construct ()
{
parent::Controller ();
$this->load->model ( 'musers' );
$this->load->library ( 'form_validation' );
$this->load->helper ( 'form' );
}
function index ()
{
$content = evaluate_response ( 'info|' . Lang ( 'inf_register' ) ) . get_register_form ();
$right = get_right_side_content ();
$page = array
(
'content' => $content,
'right' => $right,
'header_msg' => Lang ( 'register' )
);
$page = assign_global_variables ( $page, 'register' );
load_template ( $page, 'template' );
}
// ------------------------------------------------------------------------
/**
* register
*
* Covers the process needed to register a new member
*
* @access public
* @param array via $_GET
* @return
*/
function insert_register ()
{
$this->site_sentry->redirect_if_loggedIn ();
$msg = 'info|' . Lang ( 'inf_register' );
$_submit_check = $this->input->post ( '_submit_check', TRUE );
if ( $_submit_check != FALSE )
{
$url = $this->input->post ( 'url', TRUE );
if ( $url != FALSE ) {
$msg = 'error|' . Lang ( 'spam_bot' );
}
else {
$this->form_validation->add_field ( 'r_username', 'required', Lang ( 'username_req' ) );
$this->form_validation->add_field ( 'r_username', 'alpha_numeric', Lang ( 'username_alpha' ) );
$this->form_validation->add_field ( 'r_username', 'checkUnique[username]', Lang ( 'username_taken' ) );
$this->form_validation->add_field ( 'r_password', 'required', Lang ( 'password_req' ) );
$this->form_validation->add_field ( 'r_password', 'alpha_numeric', Lang ( 'password_alpha' ) );
$this->form_validation->add_field ( 'r_password_confirmed', 'matches[r_password]', Lang ( 'pass_must_match' ) );
$this->form_validation->add_field ( 'r_email', 'required', Lang ( 'email_req' ) );
$this->form_validation->add_field ( 'r_email', 'valid_email', Lang ( 'valid_email' ) );
$this->form_validation->add_field ( 'r_email', 'checkUnique[email]', Lang ( 'email_taken' ) );
if ( $this->form_validation->execute () )
{
$username = $this->input->post ( 'r_username', TRUE );
$password = $this->input->post ( 'r_password', TRUE );
$email = $this->input->post ( 'r_email', TRUE );
if ( $this->musers->add_new_member ( $username, $password, $email, 2, FALSE ) )
{
$row = $this->musers->get_member_by_username ( $username );
if ( $row != FALSE )
{
$subject = "Email de activacion de " . DOMAIN_NAME;
$details = array
(
'confirm_url' => site_url ( 'register/confirm/' . $row->ID . '/' . $row->Random_key ),
'Username' => $row->Username,
'DOMAIN_NAME' => DOMAIN_NAME,
'SITE_NAME' => SITE_NAME,
'SITE_SLOGAN' => SITE_SLOGAN,
);
$message = load_email_template ( $details, 'register' );
if ( send_email ( $subject, $row->Email, $message ) ) {
$msg = 'ok|' . Lang ( 'account_created' );
}
else {
$msg = 'error|' . Lang ( 'mail_not_sent' );
}
}
else {
$msg = 'error|' . Lang ( 'mem_not_found' );
}
}
}
}
}
$content = evaluate_response ( 'info|' . Lang ( 'inf_register' ) );
if ( isset ( $msg ) ) {
$content = evaluate_response ( $msg );
}
$content .= get_register_form ();
$right = get_right_side_content ();
$page = array
(
'content' => $content,
'right' => $right,
'header_msg' => Lang ( 'register' )
);
$page = assign_global_variables ( $page, 'register' );
load_template ( $page, 'template' );
}
// ------------------------------------------------------------------------
/**
* confirm
*
* Covers the process needed to confirm a certain member
*
* @access public
* @param array via $_GET
* @return string
*/
function confirm ()
{
$ID = $this->uri->segment ( 3 );
$key = $this->uri->segment ( 4 );
if ( $ID != FALSE || $key != FALSE ) {
if ( numeric ( $ID ) && strlen ( $key ) == 32 && alpha_numeric ( $key ) ) {
$row = $this->musers->get_member_by_id ( $ID );
if ( $row != FALSE ) {
if ( $row->Active == 1 ) {
$msg = 'error|' . Lang ( 'already_active' );
}
elseif ( $row->Active == 2 ) {
$msg = 'error|' . Lang ( 'suspended' );
}
elseif ( $row->Random_key != $key ) {
$msg = 'error|' . Lang ( 'invalid_key' );
}
else {
if ( $this->musers->activate_member_by_id ( $row->ID ) )
{
$msg = 'ok|' . Lang ( 'mem_confirmed' );
}
}
}
else {
$msg = 'error|' . Lang ( 'mem_not_found' );
}
}
else {
$msg = 'error|' . Lang ( 'invalid_data' );
}
}
else {
$msg = 'error|' . Lang ( 'no_get_data' );
}
$content = evaluate_response ( 'info|' . Lang ( 'inf_register' ) );
if ( isset ( $msg ) ) {
$content = evaluate_response ( $msg );
}
$right = get_right_side_content ();
$page = array
(
'content' => $content,
'right' => $right,
'header_msg' => Lang ( 'confirm_registration' )
);
$page = assign_global_variables ( $page, 'register' );
load_template ( $page, 'template' );
}
}
//END