1

私はphpにまったく慣れていないので、フォームとiframe(ajaxを模倣するため)を介してアップロードすることにしばらく苦労してきましたが、ファイル自体だけでなく、より多くのデータも含めています(私の場合、日付を表す文字列)。同様の例を検索してみましたが、既に正しく機能しているファイルのみをアップロードした例しか見つかりませんでした。

フォームは次のようになります (ブートストラップを使用):

<form id="upload_pic_form" class="form-horizontal" action="upload_picture.php" 
  target="upload_target" method="post" enctype="multipart/form-data">
<div id="form_content_wrapper">
    <div class="control-group">
        <label class="control-label">Display from</label>
        <div class="controls">
            <div class="input-append date" id="dpFrom" data-date-format="yyyy-mm-dd">
                <input id="picFrom" class="span2" size="16" type="text" readonly>
                <span class="add-on"><i class="icon-th"></i></span>
            </div> 
        </div>
    </div>

    <div class="control-group">
        <label class="control-label">Display until</label>
        <div class="controls">
            <div class="input-append date" id="dpTo" data-date-format="yyyy-mm-dd">
                <input id="picTo" class="span2" size="16" type="text" readonly>
                <span class="add-on"><i class="icon-th"></i></span>
            </div> 
        </div>
    </div>

    <div class="control-group">
        <label class="control-label">Image</label>
        <div class="controls">
            <input id="filename" type="text" class="input disabled" name="filename" readonly>
            <label class="btn" for="pic_file_input">Choose image...</label>
            <input id="pic_file_input" type="file" name="file" accept="image/*" style="display: none;"/>        
        </div>
    </div>

    <div class="form-actions">
        <button type="submit" name="submit" id="submit_btn" class="btn btn-primary">Upload</button>
    </div>
</div>

これで、upload_picture.php で、$_FILES を使用してファイルとそのすべての情報を取得できます。しかし、入力「picFrom」の値を取得するにはどうすればよいですか? $_POST['picFrom'] を使用してみましたが、何も得られませんでした。多分私は超簡単なものを見逃しているか、愚かであるかもしれませんが、ご容赦ください.

4

1 に答える 1

2

最初に必ず form タグを閉じてください。
次に、入力に追加name='picFrom'してみてください (これは各入力要素にありません) $_POSTではnameなくを使用しidます。

于 2013-07-23T12:45:01.080 に答える