2011-11-26 3 views
-1

나는 다른 입력 데이터를 가진 다른 레코드의 데이터베이스 데이터를 어떻게 업데이트 할 것인가에 대해 궁금합니다. 동일한 속성으로 내부의 정보를 변경하도록 선택할 수 있습니다.PHP MySQL이 다양한 입력 값을 업데이트하는 중

admin 옵션과 마찬가지로 모든 회원을 나열하고 사용자는 활성 상태와 비활성 상태를 변경할 수 있습니다.

저는 항상 업데이트 당 하나의 레코드로 완료했지만 실제로는 여러 레코드 업데이트를 시도하지 않았습니다.

<table width="760px"> 
<? 
$result = mysql_query('SELECT * FROM members WHERE (post != "1") AND (team = "'.$teamname.'")'); 

while($row = mysql_fetch_array($result)) 
{ 
$post = $row['post']; 

echo '<tr> 
    <td width="120px">'.$row['username'].'</td> 
    <td width="20px">:</td> 
    <td> 
<select class="inputboxr" style="width: 206px;" name="rank"> 
    <option value="2" ';Ppost('2'); echo'>Vice Captain</option> 
    <option value="3" ';Ppost('3'); echo'>P.R. Officer</option> 
    <option value="4" ';Ppost('4'); echo'>Senior Members</option> 
    <option value="5" ';Ppost('5'); echo'>Members</option> 
    <option value="0" ';Ppost('0'); echo'>New Recruit</option> 
    </select> 
    </td> 
</tr>'; 
} 
?> 
</table> 

그러나이 양식을 제출하면 $ _POST [ 'rank']을 사용할 수 없습니다. 각 멤버마다 다른 레코드가 있으므로 user1, user2, user3에 대해 rank1, rank2, rank3과 같아야합니다. 나는 그것이 어떻게 행해져 야하는지, 어떤 도움이되었는지 확신 할 수 없다. :)

enter image description here

그래서 이미지 예를 들어 내가있는 같은 필드 이름을 사용하여 업데이트하는 1 개 이상의 사용자가있을 때, 어떻게 내가 내 업데이트 mysql을 코딩해야입니까? 단일 쿼리에서

+1

적어도 당신의 업데이트 SQL의 몇 가지 예를 정확히 관련 코드 – ajreal

+0

을 포함,하지만 난 내 생각 얼마나 확실하지 않다 때문에 난 그냥 내 업데이트 SQL을 수행하지 않은 난 항상 UPDATE 회원들처럼, 하나의 업데이트와 함께 일하기 때문에, 시작하는 이름 = "사용자 이름" 하지만 지금 내가 뭐하는 거지하는 UPDATE 회원 같은이가 어쩌구 = "ㅋ"로 설정 어쩌구 = "ㅋ"로 설정 WHERE username = "username" 업데이트 회원 SET blah = "blah2"WHERE username = "us ername2 " UPDATE members SET blah ="blah3 "WHERE username ="username3 " – Crays

답변

2

update members 
set blah = 
(
    case username 
    when ... then "$val1" 
    when ... then "$val2" 
    end 
) 
where username in (...); 
+0

감사합니다.이 필드를 탐색하고 위 문장을 어떻게 쓰는지 모르겠습니다. – Crays

관련 문제