본문 바로가기
MySql

MySQL PHP를 사용하여 mysql db에서 단일 필드를 선택하고 에코

by 베이스 공부 2020. 12. 27.
반응형

특정 행에서 제목 열을 선택하려고합니다.

$eventid = $_GET['id'];
$field = $_GET['field'];
$result = mysql_query("SELECT $field FROM `events` WHERE `id` = '$eventid' ");
echo $result;

내가 얻는 것은 Resource id # 19 입니다.

어떻게해야합니까? 가장 좋은 방법은 무엇입니까?

 

해결 방법

 

$eventid = $_GET['id'];
$field = $_GET['field'];
$result = mysql_query("SELECT $field FROM `events` WHERE `id` = '$eventid' ");
$row = mysql_fetch_array($result);
echo $row[$field];

그러나 쿼리에서 직접 $ _GET을 사용하고 있으므로 SQL 주입에주의하십시오. 식별자를 이스케이프하는 데이터베이스 기능이 없기 때문에 주입의 위험이 특히 나쁩니다. 대신 필드를 화이트리스트를 통해 전달하거나 (더 나은 방법) 열 이름과 외부에서 다른 이름을 사용하고 외부 이름을 열 이름에 매핑해야합니다. 잘못된 외부 이름으로 인해 오류가 발생합니다.

 

참조 페이지 https://stackoverflow.com/questions/1769337

 

 

반응형

댓글