2011-05-10 5 views
1
다른 말로하면

는 드롭 다운 목록이 있습니다.PHP 드롭 다운 목록에서 이름을 에코하는 방법?

<select name="gamelist" id="gamelist"> 
<option value="1">Backgammon</option> 
<option value="2">Chess</option> 
</select> 
<input type="submit" name="submit" id="submit" value="Submit" /> 

BackgammonBackgammon 또는 Chess를 기반으로 값을 표시하고 마녀 중 하나를 선택합니다. 여기 내가 지금까지 가지고있는 것이있다. 하지만 난 이름 대신 번호를 얻을

$values = $_POST['gamelist']; 
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
if (isset($_POST['submit']) && ($_POST['submit'] == 'Submit')) { 
echo $values; 
} 
} 

덕분에

답변

2

$_POST['gamelist']에는 '1'또는 '2'가 있어야합니다. 이것은 확실히 작동합니다

$options = array(
    '1' => 'Backgammon', 
    '2' => 'Chess', 
); 

$value = $_POST['gamelist']; 

echo $options[$value]; // will echo proper option, assuming NO multiselect 

: 표시 할

, 당신은 다음과 같은 것을 사용한다.

FYI : <option> 태그 내에 포함 된 부분이 양식 데이터와 함께 전달되지 않고 선택한 옵션에 value 속성에 할당 된 값만 전달됩니다.

+0

감사합니다, 이것이 내가 원하는 것입니다. – Patrioticcow

+0

당신은 천만에요. – Tadeck

+0

여기를보세요 http://stackoverflow.com/questions/5954325/php-how-to-get-values-from-a-var-problem? – Patrioticcow

3

당신이 옵션의 값에 숫자를 사용하고 있기 때문에 숫자를 얻을 수를 얻을.

<select name="gamelist" id="gamelist"> 
<option value="Backgammon">Backgammon</option> 
<option value="Chess">Chess</option> 
</select> 
<input type="submit" name="submit" id="submit" value="Submit" /> 
0

제출시 텍스트가 아닌 값만 전송됩니다. 이 드롭 다운이 데이터베이스에서 오는 경우 DB를 사용하여 ID에 대한 제목을 가져올 수 있습니다. 고정 된 목록 인 경우 다음과 같은 배열을 사용하십시오.

$list = array (1 = > 'Backgammon' , 2 => 'Chess'); 
$title = $list[$_POST['gamelist']]; 

이 예제는 사용자의 상황에 맞게 조정 한 것입니다.

관련 문제