2013-11-04 3 views
1

html에서 제출 한 옵션 값이 유효한지 여부를 서버 측에서 확인하는 것이 좋습니까? 아니면 내가 여기에 엔지니어링을하고 있니? 한 Statment 경우에'옵션 선택'값 확인 서버 측

HTML

<select name="options"> 
    <option value="foo">Foo</option> 
    <option value="bar">Bar</option> 
    <option value="baz">Baz</option> 
</select> 

PHP

$allowed = array('foo','bar','baz'); 
if(!in_array($_POST['options'], $allowed)) { 
    //display error 
    die(); 
} 
+0

입력을 처리 할 때 다른 기능에서 오류가 발생할 수 있으며 사용자 입력을 항상 확인해야합니다. 따라서 엔지니어링이 아닌 엔지니어링이 필요합니다. – Qurben

+0

아니야. 필요한 경우에만 좋은 아이디어입니다. 그리고 당신 만 알 것입니다. – nullpotent

+1

@Qurben 그리고 XSS와 그 밖의 것들이 있습니다. – nullpotent

답변

0

당신은 (가 누락되었습니다.

if(!in_array($_POST['options'], $allowed) { 
    //display error 
} 

.

if(!in_array($_POST['options'], $allowed)) { 
    //display error 
} 
+0

아, 걱정할 코드 자체가 아닙니다. 귀하의 답변을 주셔서 감사합니다. – Joren