2010-11-22 6 views
1

드롭 다운 목록이있는 양식이 있습니다. 이 목록에는 데이터베이스의 값이 채워집니다. 그러나 양식을 제출하면 드롭 다운 목록에 중복 값이 ​​표시됩니다.양식 게시글의 중복 드롭 다운 값

코드 -

<form name="form1" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">    

    <select name="test"> 
    <?php 
     GetList(); 
    ?> 
    </select> 

    <input type="submit" value="submit" class="submit" /> 

</form> 

GetList 기능 -

드롭 다운 목록이 한 번만 채워 져야합니다
function GetList() 
{ 
    global $db; 

    $sql = "SELECT id,text FROM table"; 

    $result = mysql_query ($sql); 


    while($nt=mysql_fetch_array($result)) 
    { //Array or records stored in $nt 
    echo '<option value='.$nt[id].'>'.$nt[text].'</option>'; 
    } 

} 

. 드롭 다운 목록이 양식 게시물에 다시 채워지지만 내 드롭 다운 목록에서 중복 값을 원하지 않는다면 마음에 들지 않습니다.

어떻게 중복 값을 제거 할 수 있습니까?

편집 - 예를 들어, 드롭 다운에 페이지가 처음 착륙했을 때 값 1,2,3,4가 표시되는 경우를 예로 들어 보겠습니다. 제출을 클릭하면 드롭 다운 목록에 1,2,3,4,1,2,3,4가 표시됩니다. 그리고 제가 제출하는만큼 여러 번 그렇게합니다.

+1

확실한 쿼리가 중복되지 않습니다? 게시 한 코드는 중복을 생성해서는 안됩니다. 어떻게 당신은 .net에서 전환을 좋아합니까? – DampeS8N

+0

내 쿼리가 중복 값을 생성하지 않는다고 확신합니다. 하하하. 솔직히 엉망이 됐어, 방금 PHP로 옮겼다는 것을 어떻게 알 겠어? 내 질문이 뻔한가? 전환은 실망 스럽습니다. 간단한 작업에 많은 시간을 할애하지는 않습니다. PHP를 사용하여 작업을 수행하는 방법을 모릅니다. :) – pavanred

+0

인터넷에서 많은 검색을했지만 아무 것도 찾을 수 없었습니다. 해결책. 전체 코드를 제거하고 페이지를 다시 작성하여 실수를하지 않도록 할 계획입니다. – pavanred

답변

0

데이터베이스에 데이터가 중복되어 있거나 루프의 논리에 따라 게시물을 만들 때 어떻게 든 두 번 움직이는 것처럼 들립니다. GetList 코드의 나머지 부분을 표시하면 도움이 될 것입니다.

+0

데이터베이스에서 중복 데이터를 가져 오지 않습니다. 그리고 도움이된다면 GetList 코드의 나머지 부분을 추가했습니다. – pavanred

0

아마도 데이터베이스에서 중복 값을 가져 오는 중입니까? .. 또는 두 번 반복하는 것이 물론 더 쉽게 발견 할 수 있습니다.

+0

나는 데이터베이스에서 중복 값을 가져 오지 않을 것이라고 확신한다. – pavanred

0

이것은 꽤 추측입니다. while 루프 이후에 추가하면 도움이됩니까?

mysql_free_result($result); 
관련 문제