Пытаетесь сохранить значение Encrypted Phone_Office в модуле учетных записей Sugar CRM, но оно не отражается в базе данных?

Зашифровано значение Phone_Office, введенное в пользовательском интерфейсе перед сохранением, и зашифрованное значение передается в Phone_Office. Но значение не сохраняется в базе данных. Я внес изменения в следующий файл: - Modules/Accounts/AccountsFormBase. PHP в этом я добавил свой код под следующую функцию: - function handleSave($prefix,$redirect=true, $useRequired=false){ //Другой код, написанный для модуля Accounts, лежит здесь // Ниже приведен фрагмент кода, добавленный мной.

$text = $_POST['phone_office'];

$PhNum = $_POST['phone_office'];

$cipher = mcrypt_module_open ( MCRYPT_RIJNDAEL_256, '', MCRYPT_MODE_CBC, '' );

$iv_size = mcrypt_enc_get_iv_size ( $cipher );

$key = '12345678901234561234567890123456'; 

$iv = '9532654BD781547023AB4FA7723F2FCD';

// Зашифровать

if (mcrypt_generic_init ( $cipher, $key, $iv ) != - 1) {
$encrypted = mcrypt_generic ( $cipher, $text );
mcrypt_generic_deinit ( $cipher );
}
// Decrypt

if (mcrypt_generic_init ( $cipher, $key, $iv ) != - 1) {
$decrypted = mdecrypt_generic ( $cipher, $encrypted );
mcrypt_generic_deinit ( $cipher );
}

$txtE = bin2hex ( $encrypted );

$phone_office = $txtE;

if(!$focus->ACLAccess('Save')){
    ACLController::displayNoAccess(true);
    sugar_cleanup(true);
}

$focus->save($check_notify);

person MANJUNATH ANGADI    schedule 06.10.2014    source источник


Ответы (1)


Вы должны использовать правильную переменную для номера телефона:

$focus->phone_office = $txtE;

В настоящее время вы присваиваете значение новой переменной, и при сохранении фокуса новая переменная не используется.

person pauel    schedule 13.10.2014