2016-06-28 3 views
2

사용자 입력을 저장 한 다음 나중에 편집 할 수있게하는 데 문제가 있습니다.<select> 기본값

편집 결과를 나열 할 때 기본값이 없습니다.

<select id="edit_group" name="edit_group" class="form-control"> 
<?php Types("") ?> 
</select> 

종류의 기능은

function Types($x){ 

global $mysqli; 

    $type = " SELECT type FROM types "; 

    if ($type_results = $mysqli->query($type)) { 

     while ($row = $type_results->fetch_assoc()) { 
     printf ("<option>%s</option>", $row["type"]); 
     } 

     $type_results->free(); 

     } 

} 

DB에 저장된 그 하나는, 정말 초보자를 도움이 될 수 있도록 사람이 내가 기본값을 설정할 수있는 방법의 올바른 방향으로 날 지점 수 있다면 . 또는 내 Google 검색 아무것도 json 및 Java 옵션을 반환 한대로 문서의 올바른 방향으로 더 나은 여전히 ​​가리 킵니다.

+0

'($ row [ 'type'] == '이전에 선택한 값') {옵션에 '선택한'속성을 추가하십시오}' –

+0

코드에서 db에 어느 것이 저장되어 있는지 결정합니까? 어떤 옵션을 선택으로 표시해야 하는지를 알기 위해서는 그 값을'Types' 함수에 전달해야합니다. –

+0

나는 가치가 있고 쉽게 넘겨 줄 수 있지만 그 값을 기본으로 만드는 방법을 생각할 수 없다. – ItsLewis

답변

1

Types 함수의 인수 $x을 선택 값으로 사용하지 마십시오.

function Types($x) {  
    global $mysqli; 

    $type = " SELECT type FROM types "; 

    if ($type_results = $mysqli->query($type)) { 
     while ($row = $type_results->fetch_assoc()) { 
      $selected = ($row["type"] == $x) ? 'selected="selected"' : ''; 
      printf ("<option %s>%s</option>", $selected, $row["type"]); 
     } 

     $type_results->free(); 
    }  
} 

을 물론 HTML 코드에서 Types를 작동하려면 선택된 값을 제공 :이 코드를 사용하여 기능을 대체하려고합니다.

+0

당신은 위저드 야! 정말 고마워! 그래도 내 뇌는 소리를 질질 대다 $ = ($ row [ "type"] == $ x)? 'selected = "selected"': ''; 이 행은 실제로 무엇을하고 있습니까? 이것에 관한 문서를 연결해 주시겠습니까? – ItsLewis

+0

그것은 삼항 연산자입니다 (http://php.net/manual/en/language.operators.comparison.php). 즉, if ($ row [ "type"] == $ x) {$ selected = 'selected = "selected"'; } else {$ selected = ''; }. – zajonc

+0

그 이유는 내 뇌가 그때 boggled되었습니다! 나는 그것이 더 간단한 것이었지만 그것이 감사하다는 것을 다시 찾을 수 없다는 것을 알았다! – ItsLewis