나는 암호화 된 데이터를 반환하는 mysql 쿼리를 실행 중입니다. 가능한 경우보기에 결과를 보내기 전에 결과를 디코드하고 싶습니다. 보기보다 컨트롤러 (또는 심지어 모델)에서 디코딩을 처리하는 것이 더 나은 형식처럼 보입니다.보기로 돌아 가기 전에 mysql 쿼리를 디코드하십시오.
어떻게해야 할 지 주위를 감쌀 수는 없습니다.
개체를 반복하고 디코드하고 뷰로 전송할 다른 배열로 밀어 넣을 수 있다고 생각했습니다. 문제는 쿼리의 인덱스를 알지 못하고 유지해야한다는 것입니다.
[id] => 742
[client_id] => 000105
[last] => dNXcw6mQPaGQ4rXfgIGJMq1pZ1dYAim0
[first] => dDF7VoO37qdtYoYKfp1ena5mjBXXU0K3dDlcq1ssSvCgpOx75y0A==
[middle] =>iXy6OWa48kCamViDZFv++K6okIkalC0am3OMPcBwK8sA==
[phone] => eRY3zBhAw2H8tKE
어떤 아이디어 :
그래서 쿼리는 같은 것을 반환 할 수 있습니다?
와 함께 종료 : 그것은 특정 인덱스 인 경우에
function name(){
$data['e_key']=$this->e_key;
$clid = $this->uri->segment(3);
$name = $this->Clients_model->getNameData('*','client_id='.$clid,'');
$nameArray= array();
foreach ($name->result() as $row){
$x = $row;
$keys = array('id','client_id');
$unenc = array();
foreach ($x as $key=>$value){
if(! in_array($key, $keys)){
$unenc[$key]=$this->encrypt->decode($value,$this->e_key);
}else{
$unenc[$key]=$value;
}
}
array_push($nameArray,$unenc);
}
$data['name'] = $nameArray;
$this->load->view('names/name_view',$data);
}
인코딩으로 암호화를 혼동하지 않도록주의는 (I '는 암호화 된 데이터를 해독 할 필요'와 같은 문구를 발견하고 대답 나중에베이스 (64)의 이야기). 그것들은 똑같은 것이 아니며 데이터를 적절하게 보호하지 못하거나 고객의 요구 사항을 적절하게 보호하지 않으면 법을 위반하는 신용 카드를 취급하는 경우 일 수 있습니다! – Kurucu
@ Kurucu : 메모 주셔서 감사합니다. 코드 네이 터 (codeigniter) 내의 메소드 ('encrypt-> encode/encrypt-> decode')는 '디코드'라는 용어를 사용했다고 가정합니다. 나는이 게시물에서 암호화가 아니라 기술적으로 암호화라고 말합니다. – stormdrain