2012-07-13 3 views
1

편집 기능이있는 테이블을 만들려고하는데 이전 값과 업데이트 된 값을 연결하는 데 문제가 있습니다. 내 솔루션은 기존 값을 전달할 숨겨진 CFInput을 포함 시켜서 업데이트 할 것이고, 그런 다음 쿼리가 cfc 내에서 실행됩니다. 숨겨진 CFInput 값 전달

<cfform name="update" method="post"> 
<cfoutput query="allusers"> 
    <tr> 
     <td>#username#</td> 
     <td>#email#</td> 
     <td>#securityID#</td> 
     <td><a href="">DELETE</a></td> 
    </tr> 
     <td><cfinput name="oldUsername" value="#username#" type="hidden"></cfinput><cfinput name="updateUsername" value="New Value"></cfinput></td> 
     <td><cfinput name="oldEmail" value="#email#" type="hidden"></cfinput><cfinput name="updateEmail" value="New Value"></cfinput></td> 
     <td><cfinput name="oldSecurityID" value="#securityID#" type="hidden"></cfinput><cfinput name="updateSecurityID" value="New Value"></cfinput></td> 
     <td><cfinput name="submit" type="submit"></cfinput> 
    <tr> 
     <cfdump var="oldUsername"> 
</cfoutput> 

현재 나는 어떤 오류를 받고 있지 않다, 그러나 이전 값을 전달하지 않는 것. 어떤 팁?

+2

당신은 FORM 태그와하는 cfdump VAR에서 작업을 놓치고는 해시 표시로 포장해야합니다 #oldusername # –

+0

테이블에 ID 열이 없습니까? 그렇지 않다면이 목적을 위해 하나만 추가하십시오. – Busches

+1

양식을 표에 배치하면 안됩니다. 테이블은 레이아웃이 아닌 테이블 형식 데이터 용입니다. –

답변

2

있는지 확인하는 cfdump 해시 태그를 사용하고 있습니다 :

<cfdump var="#oldUserName#"> 

를, 그렇지 않으면 변수의 내용을 덤프하지 않습니다.

둘째, 아직 oldusername을 설정하지 않은 경우 "oldusername"을 평가하도록 ColdFusion에 요청하는 중입니다. CFINPUT 태그를 사용하면 HTML의이 태그를 JavaScript 및/또는 Flash 향상 기능이있는 일반 태그로 간단히 다시 작성할 수 있습니다. 따라서 form.oldusername은 게시물이 다음 CF 템플릿/URL로 실행 된 후에 만 ​​사용할 수 있습니다. 변수 범위 검색 순서를주의 깊게 알지 않는 한 항목을 교차하지 않도록 범위, 형식, 변수 등을 범위를 지정하는 것이 좋습니다.

3

다른 사람이 답을 제공합니다. 내 답변은 귀하의 양식에 관한 조언 일뿐입니다.

숨겨진 cfinput이 테이블에 있으면 안됩니다. 테이블은 표시된 항목 용입니다. 당신은 다음과 같이 바로 cfform 태그 아래에 숨겨진 cfinputs를 이동 봉사 훨씬 더 좋을 것 :

<cfform name="update" method="post"> 
// NON DISPLAY STUFF 
<cfinput name="oldUsername" value="#username#" type="hidden"> 
<cfinput name="oldEmail" value="#email#" type="hidden"> 
<cfinput name="oldSecurityID" value="#securityID#" type="hidden"> 
// DISPLAY STUFF 
<table> 
</table> 
</cfform> 
+1

클릭 할 수있는 "좋은 조언"깃발이 있었으면합니다. :) –

+0

그냥 내 대답을 upvote 수 있습니다. 그건 아무도 아프지 않아. :) –

+1

CFFORM을 사용하지 말 것을 제안합니다. 요즘 쓸모없는 것보다 덜 찾습니다. 그리고 실제로 양식 필드가 테이블에 없어야합니다. 테이블은 표 형식의 데이터를위한 것이며 형식이 아닙니다. :디 –