terug naar blogs
Email helper Codeigniter
Binnen Codeigniter 3 is er geen email helper meer om te bepalen of een e-mail een correcte opbouw heeft.
De redenatie om deze helper te verwijderen, was dat PHP hier zelf prima in voorziet. Op zich klopt dat.
Alleen is het wel zo handig om deze functie met één regel / commando te kunnen gebruiken. Deze helper voorziet hierin.
De helper bevat eigenlijk twee PHP functies.
Één om de string te ontdoen van foute tekens en één om te bepalen of de opbouw van de email correct is.
Het script is te gebruiken als een normale helper voor Codeigniter.
Daarvoor dien je het script in de map ./application/helpers/ te plaatsen.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
// valid_email
function valid_email( $email )
{
// Remove all illegal characters from email
$email = trim($email) ;
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
// Validate e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false)
{
return TRUE ;
}
else
{
return FALSE ;
}
}
//-----/
/* End of helper email_helper */
/* Location: ./application/helpers/email_helper.php */
Hoe te gebruiken?
De helper dient geladen te zijn.
Als je dit applicatie breed wilt, dien je dit in het bestand ./application/config/autoload.php bij de helpers te vermelden.
<?php
/*
| -------------------------------------------------------------------
| Auto-load Helper Files
| -------------------------------------------------------------------
| Prototype:
|
| $autoload['helper'] = array('url', 'file');
*/
// $autoload['helper'] = array();
$autoload['helper'] = array('email');
Als je af en toe de e-mail functionaliteit gebruikt, kun je deze helper ook per controller / functie aanroepen.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
// Contact
class Contact extends CI_Controller
{
// index
function index()
{
//
}
//-----/
// verstuur
public function verstuur()
{
//
$this->load->helper('email');
//
}
//-----/verstuur
}
//-----/Contact
En in het gebruik:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
// Contact
class Contact extends CI_Controller
{
// index
function index()
{
//
}
//-----/
// verstuur
public function verstuur()
{
//
$this->load->helper('email');
//
$email = $this->input->post('email', true ) ;
//
if( valid_email( $email ) )
{
// Het verstuur gedeelte
}
else
{
// Het gedeelte voor een verkeerde e-mail
}
}
//-----/verstuur
}
//-----/Contact
De helper wordt het eerst geladen.
Deze is nu alleen in deze functie te gebruiken.
Het volstaat dan om de functie naam ("valid_email") met als parameter de email te gebruiken om te zien of de email opbouw correct is.
Download link
Klik hier om de scripts te downloaden.