0

プレビュー機能が気に入っているので、Twitter Boostrap FileUploadを使用したいと思います。これと、アップロードを行い、データベースに情報を追加する php スクリプトに投稿したいテキストがあります。javascriptができるのであれば、ファイルのアップロードに必ずしもphpが必要なわけではありません。リンクが必要なだけです。

この質問は以前に尋ねられましたが、有効な答えが見つかりません。いいえ、最初の回答で提案されているブートストラップ ファイル アップロードを使用したくありません。

私のphpコードでは、imgDataを_FILEで取得しようとしていますが、空です。どうすればこれを入手できますか?

これは私のフォームです:

    <form action="php/service.php" method="post">
      <div class="control-group">
        <div class="fileupload fileupload-new" data-provides="fileupload">
            <div class="fileupload-preview thumbnail" style="width: 200px; height: 150px;"></div>
            <div>
                <span class="btn btn-file">
                    <span class="fileupload-new">Select image</span>
                    <span class="fileupload-exists">Change</span>
                    <input type="file" name="imgData" id="imgData" />
                </span>
                <a href="#" class="btn fileupload-exists" data-dismiss="fileupload">Remove</a>
            </div>
        </div>
    </div>
    <div class="control-group">
        <textarea rows="3" id="text" class="" name="text" placeholder="Text..."></textarea>
    </div>
    <div class="control-group">
        <button type="submit" id="upload" class="btn" onclick="$('.fileupload').fileupload();">Upload</button>
    </div>
    </form>

service.php で:

if ($_FILES["imgData"]["error"] > 0) {
    echo "Error: " . $_FILES["imgData"]["error"] . "<br />";
} else {
    $fileExt = $_FILES["imgData"]["type"];
}
4

1 に答える 1

0

フォームのエンコーディング タイプを設定する必要があります。

<form action="php/service.php" method="post" enctype="multipart/form-data">

また、IE でファイルをアップロードするこのブートストラップの方法にも問題がありました。アップロードを妨げるセキュリティ上の問題がいくつかある可能性があります。

于 2013-04-17T11:27:14.130 に答える