2012-04-06 56 views
0

我試圖查看我的CF頁面時,錯誤消息的根本原因,但該頁仍然正常工作。我現在必須道歉。這是我第三天使用CF.我真的很感謝所有幫助ColdFusion:變量CHRIS3未定義。但頁面仍然有效,除了最初的錯誤消息

<cfsetting showDebugOutput="Yes"> 
<form id="form1" name="form1" method="post" action=""> 

    <label for="Chris3">Please Select.<br /> 
    </label> 
    <select name="Chris3" id="Chris3"> 
    <option value="COOKWARE/CUTLERY">COOKWARE/CUTLERY</option> 
    <option value="BAKEWARE/ ELECTRICS">BAKEWARE/ ELECTRICS</option> 
    <option selected="selected">Please Select one</option> 
    </select> 
    <input type="submit" name="SUBMIT" id="SUBMIT" value="Submit" /> 
</form> 
<p> 
<cfset Chris3 ="Form.Chris3"> 
    <cffile action="append" 
    file="C:\Inetpub\wwwroot\PURGE\WS\DEPTM.txt" 
    output="#Chris3#"> 

錯誤消息:

以下信息是爲網站開發者用於調試目的。

處理請求時發生錯誤
變量CHRIS3未定義。

The error occurred in C:\Inetpub\wwwroot\PURGE\WS\PURGE.cfm: line 29 

27 : <cffile action="append" 
28 : file="C:\Inetpub\wwwroot\PURGE\WS\DEPTM.txt" 
29 : output="#Chris3#"> 
30 : </p> 
31 : <p>Below are Departments that have finished reviewing the purge</p> 


-------------------------------------------------------------------------------- 

Resources: 
Check the ColdFusion documentation to verify that you are using the correct syntax. 
Search the Knowledge Base to find a solution to your problem. 


Browser Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E) 
Remote Address 192.168.97.38 
Referrer  
Date/Time 06-Apr-12 03:30 PM 

Stack Trace (click to expand) 

回答

2

它看起來像有兩個問題:

第一個問題就是你設置的變量Chris3。如果你希望它是等於傳遞到形式的價值,那麼你需要使用

<cfset Chris3 = form.Chris3 /> 

..你把它寫現在它的存儲文本字符串「form.Chris3」作爲輸入值的方法。

第二個是該字段在表單提交之後才存在。你可以做兩件事之一來處理這件事。無論是添加cfparam,像斯科特建議,所以價值總是被定義:

<cfparam name="form.Chris3" default="" /> 

或者你可以添加一個檢查,看看你訪問該值設置爲您的變量之前表單已經提交:

<cfif StructKeyExists(form,'Chris3')> 

如果您使用<cfparam>只需檢查該字段的長度,而不是:

<cfif Len(Trim(form.Chris3))> 

至於值顯示出來不確定的,我看不出有什麼毛病w^ith你的代碼。我複製並粘貼它,它在我的機器上運行良好。

+0

非常感謝!該網頁是成功的。 p.s.我剛剛獲得了這個獎項。雙謝謝你! – ElSwifto 2012-04-10 15:49:04

+0

@ElSwifto很高興爲您提供幫助 – 2012-04-10 19:24:57

0

除非你把(或PARAM)在頁面頂部的值form.chris3,這個錯誤預計您運行頁的第一次,因爲形式範圍很可能是空的。表單提交後,它將按預期工作。

不知道你在做什麼,但是將CFFILE封裝在一個CFIF中,在執行CFFILE之前檢查是否存在'form.chris3'(或者將'form.chris3'的值設置爲'chris3' )。

相關問題