2012-03-31 6 views
0

에 드롭 목록에서 옵션을 삽입 :내가 예를 들어,이 드롭 목록을 데이터베이스

이 값 (1, 2, 3 ...) 및 삽입을하는 것입니다 내가 지금하고 있어요
<p>Your Age:</p> 
<select> 
    <option value="1">0 - 13</option> 
    <option value="2">13+</option> 
    <option value="3">18+</option> 
</select> 

그것 ageusers 테이블에 어떤 값이 나이에 속하는지 어떻게 알 수 있습니까? 나는 ID와 나이가 ages 인 테이블을 가지고있다.

이 방법이 필요하지는 않습니다. 너무 복잡하고 효과적으로 생각하지 않습니다.

다른 옵션은 나이를 가진 문자열을 받아서 age 열에 넣는 것입니다. 그러나이 방법은 동적이지 않으며 문자열이 연령대에서 하나인지 확인할 수있는 방법은 무엇입니까?

뭐라고 말합니까? 감사합니다.

+0

if ($ value == 1) $ age = '0-13'elsei if ...'이렇게 하시겠습니까? – safarov

답변

1

name 속성을 선택하고 PHP의 $ _POST 변수에서 검색 할 수 있습니다. 예 :

$ _POST [ '나이'] 당신은 당신이 선택 필드를 생성 할 때 옵션 태그 사이의 값과 일치하도록 옵션의 값을 설정할 수 있습니다

+1

그리고 이미 작성하지 않았다면 양식 태그에 포장하십시오. –

+0

예 - 예제 코드에 추가되었습니다! –

2

: 다음 PHP를 사용

<form action="your_php_page.php" method="post"> 
    <select name="age"> 
     ... 
    </select> 
</form> 

난 당신이 enum(1,2,3)와 테이블의 속성을 만들 수 있다고 생각

$ageMap = array(
    "1" => "0 - 13", 
    "2" => "13+", 
    "3" => "18+" 
); 

// get the value using the posted value from your select field 
$ageMap[$_POST["YourAge"]]; 
-1

같은 것을, 그 후 당신은 가치있는 보낼 수 있습니다 - 또는 당신이 그것을 제출할 때 당신은 찾아 볼 배열을 가질 수 있습니다 e를 1, 2 또는 3으로 표에 표시합니다.

장점 : 당신을 만들기 (단지 (1, 2, 3), 당신은 본건 필요도 방법입니다 연령대를위한 별도의 테이블을 저장하는 데이터베이스의 나이를 저장하는 본건 필요 3 세의 표를 한 다음 연령 열에 한 행을 연관 시킴).

불만 : 불필요한 코드 (아마), 얼마나 자주 호출하는지, 그리고 객체 지향 응용 프로그램이 얼마나 불만인지.

어떤 연령대가 if & else인지 확인하고이를 전역 변수로 저장할 수 있습니다.

+0

코드를 편집 할 때 데이터베이스의 값이 일치하지 않기 때문에 매우 권장하지 않습니다. 다른 테이블에서 연령을 표준화하십시오. –

+0

코드를 편집하면 무슨 뜻입니까? 값을 (1,2,3)에서 (4,5,6)로 변경하면 위의 응답 중 아무 것도 작동하지 않습니다 ... –

+1

가장 좋은 방법은 age를 다른 테이블에 저장하는 것입니다 (예 : age age_id, value)'를 선택하고이 테이블의 값으로 select를 채 웁니다. 연령을 선택하면 연령 표의 값에 해당합니다. 이렇게하면 코드와 데이터베이스가 동기화되지 않습니다. –

0

이름 속성에서 선택 상자의 값을 가져올 수있는 선택 상자 "이름"속성을 지정해야합니다.

당신이 클릭 제출

<select name="ages"> 
<option value="1">0 - 13</option> 
<option value="2">13+</option> 
<option value="3">18+</option> 

, 코드에서 당신이 선택 상자에서 선택 시대의 가치를 얻을 것이다

$age = $_POST['ages']; 

물품.