2

友達、

ファイル アップロード フォーム フィールドを Joomla 2.5(.11) で動作させようとしています。何らかの理由で、ファイルをアップロードできません。

「保存」をクリックするとすぐに、ファイルアップロードフィールドに「ファイルが選択されていません」と表示されます。

ドキュメントとディスカッションを検索しましたが、役に立ちませんでした。もちろん、PHP を利用して、バックエンド コンポーネントでファイルをアップロードする方法に関する情報を見つけました。

XML ファイル コードを添付しました (ただし、個人を特定する情報などは削除しました)。

PHP ソリューションに焦点を当てた Stack の他の投稿とは異なる、これに関するヘルプに本当に感謝しています-モジュール params を使用してこれを行うことを検討しています。

http://docs.joomla.org/File_form_field_type

<?xml version="1.0" encoding="utf-8"?>
<extension
        type="module"
        version="2.5"
        client="site"
        method="upgrade">
    <version>2.5.0</version>
    <config>
        <fields name="params" >
            <fieldset name="basic">
                <field name="file1" type="file" label="Upload" description="Upload a file" size="10" />
            </fieldset>
        </fields>
    </config>
</extension>

フォームフィールドで enctype="multipart/form-data" を使用するようにドキュメントに記載されていますが、それがどこに行くのかわかりません...フィールドをフォームフィールドにラップして、それを使用してみました。 config および fields 要素に設定しようとしましたが、役に立ちませんでした。

友達に感謝します。

4

2 に答える 2

1

最近、コンポーネント/モジュールのバックエンドからファイルをアップロードするという同じ問題に遭遇しました。

私が見つけたことから、次のことが言えます。

  • タイプfileを使用すると、html が生成されますが、機能は生成されません。
  • ファイルをアップロードできるタイプmediaで、通常は画像などです。私は pdf/xml/doc で成功しませんでした (特に、メディアマネージャーにそれらを表示させて、1 つを選択できるようにします。メディアファイルのみを表示するビューがあります)。ドキュメントの種類によっては、このファイルのアップロードを許可するためにいくつかのセキュリティ チェックを構成する必要があります。
  • タイプfildlistは、使用可能なファイルのドロップダウンを生成するので、1 つを選択できます。

考えられる解決策(試したことはありませんが、試したことを再考するとうまくいくかもしれません)。1 メディア付きファイルをアップロードします。2. 保存してページを更新します。3. ドロップダウンからファイルを選択します。

これが役立つかどうか教えてください。

于 2013-05-22T20:04:07.583 に答える
1

サポートするコンポーネントとテーブル クラスがある場合は、ファイル フィールド タイプを使用してすべてのフロント エンド HTML を簡単に処理し、JTable クラスで store メソッドをオーバーロードできます。次のコード行を挿入します。

        $src = $form['jform']["tmp_name"]['document'];
    $path = JPATH_ROOT . "/media/com_mycomponent/documents/";
    $name = $form['jform']['name']['document'];
    $this->document = $name;
    JFile::upload($src, $path . $name);

このコード スニペットは、フィールド名がドキュメントであり、パスが指す場所に保存することを前提としています。ただし、これは実際のファイルを保存するのに役立ちます。テーブルまたはモデル クラスにロジックを追加して、ファイルが実際にアップロードされたことを反映するようにフォームにフラグを立てて変更する必要がありますが、必要に応じて変更するオプションを提供する必要があります。

誰かがそれについていくつかの提案をしましたか?

于 2013-08-20T16:02:11.407 に答える