Я отправляю свой адрес электронной почты через форму, отправляемую ajax контроллеру, и данные для ajax создаются с помощью этой функции:
// Function "serializeToJson" - Serialize form data, merge new object and returns json object
function serializeToJson(element, newObj){
// Serialize form and split into Json Object
var data = element.serialize().split("&");
var object = {};
for(var key in data){
object[data[key].split("=")[0]] = data[key].split("=")[1];
}
// Merge new json obj to existing json object
const target = {};
$.extend(target, newObj, object);
// return the final json object
return target;
}
и в моем аяксе
data : serializeToJson(SUform, {action:'process_signup'}),
Письмо, которое отправляется через форму, получает urlencoded, т.е.
XXXXXXXXXX% 40gmail.com
% 40 должен быть декодирован до @ , когда я получу данные в моем контроллере.
В моем контроллере я установил следующие правила проверки формы для электронной почты:
$this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email|is_unique[users.email]');
Ошибка:
Поле электронной почты должно содержать действительный адрес электронной почты
Что я хочу?
Есть ли способ, с помощью которого я могу urldecode электронной почты в форме проверки?