2013-09-26 3 views
-1

이것은 내 업데이트 프로필 페이지입니다.데이터베이스에서 드롭 다운 값 선택

<?php 
$i = range('A','Z'); 
foreach($i as $val){ 
    echo "<option id='".$val."'"; 
    if($val == $row['midI']) echo " selected"; 
    echo ">".$val."</option>"; 
} 
?> 
+0

에 실수

echo "<option id='".$val."' <?php if($val==$row['midI']){echo "selected";}?>>" .$val."."."</option>"; 

변경 이것이 어떤 방식으로 작동하지 않습니다입니까? 이것을 디버그 할 수 없으므로 명확히하십시오. – David

+1

오류가 발생하는 PHP 태그 안에 PHP 태그를 중첩했습니다. – Welsh

+0

정확히 무엇을 요구하고 있습니까? 오류가 있습니까? 우리가 당신을 도울 수 있도록 도와주세요. – Fluffeh

답변

1

이 그것을 해결됩니다 확인하십시오 내 데이터베이스에 따라 설정할 도움이 될 간결한Ternary operator의 사용으로 인해 :

(210)
echo "<option id='" .$val ."'" .($val == $row['midI'] ? " selected='selected' " : ' ') .">" .$val ."</option>"; 
2

내가이 줄 오류를 참조하십시오 :

echo "<option id='".$val."' <?php if($val==$row['midI']){echo "selected";}?>>" .$val."."."</option>"; 

난 내 드롭 다운 메뉴의 값이

<select id="id" name="txtMInit"> 
    <option value="" selected>--</option> 
     <?php 
     $i = range('A','Z'); 
     foreach($i as $val){ 
      echo "<option id='".$val."' 
      <?php if($val==$row['midI']){echo "selected";}?>>" .$val."."."</option>"; 
     } 
     ?> 
</select> 
+0

고맙습니다. – user2805941

+1

문제 없습니다. 내 대답이 문제를 해결했다면, 비슷한 문제를 겪을 수있는 사람들에게 도움이 될 수 있도록 동의하는지 확인하십시오. 건배. . . – Uours

+1

@Emilio Gort Ternary 연산자에 대한 링크를 삽입 해 주셔서 감사합니다. – Uours

0

여기

$selected = ""; 
if($val==$row['midI']) {$selected="selected";} 
echo "<option id='".$val."' ".$selected." >" .$val."</option>"; 
+0

user2805941, 흐름 이해를 시작하면 ($ val == $ row [ 'midI']? "selected = 'selected'": ''와 같이)보다 최적화 된 표현식으로 전환 할 수 있습니다. –

+0

왜 3 진 "이 더 최적화되어 있습니까? "? – James

+0

은 공간이 적기 때문에 –