簡體   English   中英

如何更改為文件輸入形式或“ input type ='file'”顯示的文本

[英]how do I change the text that is displayed for file input form, or “ input type='file' ”

有這個屬性嗎? 因為如果找不到我。

我想做的就是在提交表單后回顯用戶選擇的文件名。 為了清楚起見,它已經顯示了文件名,但是問題在於表單可能以錯誤的狀態提交,在這種情況下,黃色文本返回到“未選擇文件”。 提交表單后,我只需要保留文件名即可。

我有一個表格...

 <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" enctype="multipart/form-data">



                    <?php
//upload files here. 

                    $fcount = 0;
                    foreach ($layouts[$my_layout] as $key => $value) {
                        //create the form
                        echo 'choose an image with an aspect ratio of ' . $value;
                        ?>
                    <input type="file" name="filesToUpload[]" >
</form>

在頁面上,一旦提交表單,我想將黃色文本更改為文件名。

在此處輸入圖片說明

當您的顯式問題詢問如何更改文本時,隱含的問題是您要設置輸入的值,以便將同一文件再次上載。

你不能那樣做。 那將需要允許頁面作者確定從用戶計算機上載了什么文件。 這將是嚴重的安全風險。

您可以做的是將上載的文件存儲在服務器上(例如,在具有定期刪除舊文件的temp目錄中,例如使用cron),然后以新格式對其進行引用。

 <label> <input type="checkbox" name="already_uploaded_file" value="my_file_identifier" checked> Use foo.jpeg </label> 
 <label> Upload a different file <input type="file" name="foo"> </label>

獲得文件后,您應該可以從中獲取originalName屬性。 嘗試$fileName = $request->file('name')->getClientOriginalName();

注意:這未經測試,我假設Request對象上的file()方法都返回一個UploadedFile實例,並且Laravel的UploadedFile類正在擴展Symfony的類或直接使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM