2012-05-11 5 views
0

안녕하세요, 나는 AES 암호화 데이터베이스에서 데이터를 가져 오는 예약 시스템을 가지고 있습니다. 데이터베이스에서 우편 번호와 대상이 암호화되어 있으므로 목록 입력이있는 이전 스크립트를 사용하므로 대상 목록이 커지기 때문에 사용자가 목록에서 대상을 선택할 수 있습니다. 사용자가 입력하는 양식을 만들고 싶습니다. 몇 글자로 작성하고 목적지는 ajax auto-fill을 사용합니다. 내가 가진 문제는 그것의 끌어 오기, 암호화 된 데이터입니다.예약 양식에 대한 암호화 된 데이터 검색

첫 번째 예약 스크립트는

$areafro = mysql_query("select AREA_NO, AES_DECRYPT(POSTCODE, 'qsi') as POSTCODE, AES_DECRYPT(AREA_NM, 'qsi') as AREA_NM from area_mst where AES_DECRYPT(POSTCODE, 'qsi') LIKE '$char%' group by POSTCODE"); 

이 새로운 예약 스크립트 코드

if(isset($_GET['areas']) && isset($_GET['letters'])){ 
$letters = $_GET['letters']; 
$letters = preg_replace("/[^a-z0-9 ]/si","",$letters); 
$res = mysql_query("select POSTCODE,AREA_NM from area_mst where (POSTCODE like '".$letters."1' or AREA_NM like '".$letters."1') order by AREATYPE") or die(mysql_error(); 

while($inf = mysql_fetch_array($res)){ 
    if($inf["POSTCODE"]!='') 
    { 
    echo $inf["POSTCODE"]."-".$inf["AREA_NM"]."|"; 
    } 
    else 
    { 
    echo $inf["AREA_NM"]."|"; 
    } 
}  

어떤 사람이 데이터를 해독하는 방법에 저를 도울 수있다 해독이 줄을했다?

답변

0

후자 코드의 쿼리는 암호를 해독하지 않습니다. 이전 코드에 주목, 당신은

$areafro = mysql_query("select AREA_NO, AES_DECRYPT(POSTCODE, 'qsi') as POSTCODE, 
AES_DECRYPT(AREA_NM, 'qsi') as AREA_NM from area_mst 
where AES_DECRYPT(POSTCODE, 'qsi') LIKE '$char%' group by POSTCODE"); 

이 그러나 새로운 코드에서, 당신은 단순히 암호를 해독하지 않고 데이터를 추출한다.

$res = mysql_query("select POSTCODE,AREA_NM from area_mst 
where (POSTCODE like '".$letters."1' or AREA_NM like '".$letters."1') 
order by AREATYPE") 
정확히 이전 코드의 하나로서 쿼리를 가지고 새로운 코드를 변경

관련 문제