Ho inserito questo file di classe chiamato "My_Form_validation.php" in "application/core" e ho anche provato a inserirlo in "application/library".Estensione del modulo di convalida in Codeigniter
Nel mio controller sto usando
$this->form_validation->set_rules('user_postcode', 'Postcode', 'valid_postcode|trim|required|xss_clean');
Si tratta di che cosa è in My_Form_validation.php - la logica di reale non è in questione qui perché ho un paio di opzioni per convalidare in realtà il codice postale. Quello di cui ho bisogno di aiuto è capire perché non sta caricando o non viene chiamato!
La mia versione CI è define ('CI_VERSION', '2.0.2');
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
/**
* Form validation for UK Postcodes
*
* Check that its a valid postcode
* @author James Mills <[email protected]>
* @version 1.0
* @package FriendsSavingMoney
*/
class MY_Form_validation extends CI_Form_validation
{
function __construct()
{
parent::__construct();
log_message('debug', '*** Hello from MY_Form_validation ***');
}
function valid_postcode($postcode)
{
/**
*
* UK Postcode validation expression from Wikipedia
* http://en.wikipedia.org/wiki/Postcodes_in_the_United_Kingdom
*
* Note: Remember to strtoupper() your postcode before inserting into database!
*
*/
$pattern = "/^(GIR 0AA)|(((A[BL]|B[ABDHLNRSTX]?|C[ABFHMORTVW]|D[ADEGHLNTY]|E[HNX]?|F[KY]|G[LUY]?|H[ADGPRSUX]|I[GMPV]|JE|K[ATWY]|L[ADELNSU]?|M[EKL]?|N[EGNPRW]?|O[LX]|P[AEHLOR]|R[GHM]|S[AEGKLMNOPRSTY]?|T[ADFNQRSW]|UB|W[ADFNRSV]|YO|ZE)[1-9]?[0-9]|((E|N|NW|SE|SW|W)1|EC[1-4]|WC[12])[A-HJKMNPR-Y]|(SW|W)([2-9]|[1-9][0-9])|EC[1-9][0-9]) [0-9][ABD-HJLNP-UW-Z]{2})$/";
if (preg_match($pattern, strtoupper($postcode)))
{
return TRUE;
}
else
{
$this->set_message('valid_postcode', 'Please enter a valid postcode');
return FALSE;
}
}
}
controlli di integrità: 1) file è 'applicazioni/librerie/MY_Form_validation.php', 2)' $ config [ 'subclass_prefix '] =' MY _ '; ', 3) La soglia del log di configurazione mostrerà il tuo messaggio di debug (e permetteranno permessi ai file) – landons
Sì a tutto ... –
Nessun indizio. Dovrei eseguire il debug del fucile con tutti i tipi di chiamate 'var_dump()' e 'die()' ... – landons