2010-05-19 55 views
2

我試圖重新使用生成FILE字段的代碼,以便在將某些內容添加到數據庫時使用,並且在有問題的項目中使用已存在於數據庫中的數據變灰(和禁用)正在編輯或查看詳細信息。但是,我似乎無法讓文字填補這個空白。我正在使用:使用默認文本填充FILE字段

echo '<input type="file" name="small[]" value="' . $value_from_database . '" DISABLED><br>'; 

我是否缺少任何東西?如果沒有,是否有任何體面的解決方法?

回答

3

這是可能由於安全限制。想象一下,這是可能的,那麼人們將能夠制定這樣一個網頁:

<!doctype html> 
<html lang="en"> 
    <head><title>Gimme yer passwords.txt!</title></head> 
    <body onload="document.upload.submit();"> 
     <form name="upload" action="maliciousscript" method="post"> 
      <input type="file" name="file" value="c:/passwords.txt"> 
      <input type="submit"> 
     </form> 
    </body> 
</html> 

我反而只是顯示它在一個簡單的<input type="text" disabled>場。

+0

我甚至沒有考慮到安全問題。這就說得通了。謝謝您的幫助! – dclowd9901 2010-05-19 01:57:50

+0

不客氣。 – BalusC 2010-05-19 01:59:22

0

我相信你不能改變這一點。相反,使用一個隱藏的輸入傳遞默認值:

<input type="hidden" name="file_default" value="..." />

+0

因爲它已經'禁用',我不認爲有興趣把它發回服務器:) – BalusC 2010-05-19 01:58:07