2012-01-15 3 views
0

나는 내가이나는 필드 이름 = 뭔가

SELECT MAX(sl) FROM associate where br_code=$_REQUEST[br_code] 

사용했다 지금까지 필드 이름 에 따라 최대 값을 찾기 위해 최대 절을 사용하려면 최대 사용하고 싶지만이

근무하지 않습니다

친구로 내 질문에서 그것은 어디에서 절을 선택해야 br_code 이름의 그룹에서 sl의 최대 값을 찾으려면 분명하다.

+0

어떤 결과가 있습니까? 보안상의 이유로 ($ _PSOT 및 $ _GET을 대신 사용하여) $ _REQUEST를 사용하지 않아야합니다. –

+2

스택 오버플로에 오신 것을 환영합니다! 표시하는 코드는 [SQL 주입] (http://php.net/manual/en/security.database.sql-injection.php)에 취약합니다. 라이브러리의 적절한 위생 방법 (고전적인 mysql 라이브러리의 경우'mysql_real_escape_string()')을 사용하거나 PDO와 준비된 명령문으로 전환하십시오. –

+0

질문은 조금 순진하지만, 여전히 질문이며 그것이 유효합니다. 나는 그것이 downvote 자격이 있다고 생각하지 않습니다. –

답변

0

SQL 인젝션 공격으로부터 안전하면서 데이터를 선택합니다. 당신이 mysql_real_escape_string를 사용하는 경우 이미 설정된 연결을 가지고 있음을

$query = "SELECT mx FROM (SELECT MAX(s1) AS mx, br_code FROM associate GROUP BY br_code) AS T1 WHERE T1.br_code=" . mysql_real_escape_string($_REQUEST['br_code']); 

하십시오 참고. 자세한 내용은 this을 참조하십시오.

+0

안녕 Milad 그것은 작동하지 않았다 – Somdeb

+0

새로운 대답은 어떨까요? 나는 그것을 업데이트했다. –

+0

그것의 오류를주는 'where 절에서'kol '알 수없는 열 – Somdeb